web-dev-qa-db-fra.com

Comment configurer un routeur Ubuntu avec 2 interfaces WAN

J'ai un routeur Ubuntu avec le serveur Ubuntu 14.04 installé. Les interfaces réseau physiques sont:

eth0 - réseau local
eth3 - WAN (internet)
wlan2 - LAN sans fil local (AP)

Ceci est mon/etc/network/interfaces:

# The loopback network interface
auto lo
iface lo inet loopback

# LAN interface
auto eth0
iface eth0 inet manual

# This is the Wireless section.
auto wlan2
iface wlan2 inet manual
 up /sbin/ifconfig wlan0 up

# This is the Bridge section.
auto br0
iface br0 inet static
address 192.168.2.106
network 192.168.2.0
netmask 255.255.255.0
bridge_ports eth0 wlan0

# WAN network interface (NAT-ed)
auto eth3
iface eth3 inet static
address 192.168.1.1
netmask 255.255.255.0
gateway 192.168.1.20
dns-nameservers 8.8.8.8 4.4.4.4

La route est:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.20    0.0.0.0         UG    0      0        0 eth3
192.168.1.0     *               255.255.255.0   U     0      0        0 eth3
192.168.2.0     *               255.255.255.0   U     0      0        0 br0

J'utilise UFW et voici ce que j'ai ajouté à /etc/ufw/before.rules:

# Configure NAT settings
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.2.0/24 -o eth3 -j MASQUERADE
COMMIT

statut de UFW:

Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
80                         ALLOW       Anywhere
443                        ALLOW       Anywhere
Anywhere                   ALLOW       192.168.2.0/24
22 (v6)                    ALLOW       Anywhere (v6)
80 (v6)                    ALLOW       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)

Ensuite, j'utilise aussi hostapd pour le wifi AP. Tout fonctionne parfaitement. Mais ... Ce que je veux faire est d’ajouter une carte réseau supplémentaire qui serait la deuxième interface WAN sur sur laquelle j’ai une adresse IP statique publique. Je veux utiliser la norme eth3 actuelle comme connexion Internet principale car il s'agit d'une connexion très rapide et fiable, mais se trouvant derrière un NAT, il manque donc une adresse IP publique. J'ai une connexion Internet supplémentaire avec une adresse IP publique que je veux utiliser uniquement pour accéder au serveur (routeur) de l'extérieur (ssh, http, https). La connexion Internet IP publique serait connectée à l’eth2.

Je ne sais pas comment configurer ça. Lorsque je viens d'entrer cette configuration dans/etc/network/interfaces, je ne peux pas accéder au serveur (ssh, http, https) via une adresse IP publique spécifiée pour eth2. (La connexion Internet avec cette adresse IP publique est correcte - je l'ai testée avec un autre routeur matériel et je pouvais y accéder facilement de l'extérieur):

# WAN network interface with a public IP
auto eth2
iface eth2 inet static
address 217.XXX.XXX.AAA
netmask 255.255.255.224
gateway 217.XXX.XXX.BBB
dns-nameservers 8.8.8.8 4.4.4.4

Quelqu'un peut-il m'aider à résoudre ce problème?


OK, j'ai partiellement résolu le problème. >>>

J'ai créé une nouvelle table de routage et ajouté le routage pour "l'adresse IP publique WAN" et ajouté une règle ip afin que tout ce qui provient de l'adresse IP publique soit routé à l'aide de la nouvelle table de routage vers la bonne interface/gw:

Sudo ip route add 217.XXX.XXX.160/27 dev eth2 src 217.XXX.XXX.185 table T1
Sudo ip route add default via 217.XXX.XXX.161 table T1
Sudo ip rule add from 217.XXX.XXX.185 table T1

Maintenant, le serveur est accessible de l'extérieur via une adresse IP publique associée à WAN eth2. Ce qui m'inquiète, c'est que depuis que j'ai configuré ceci, je n'ai aucun accès au serveur via une adresse IP publique depuis le LAN derrière le routeur. Je pense que c'est parce que le masquage est défini de manière à acheminer tout LAN derrière le routeur via eth3 - qui est une WAN interface eht3 (sans adresse IP publique). Ai-je raison? Y at-il un moyen de résoudre ce problème?

2
user241281

Complètement résolu

Maintenant que je dispose des paramètres corrects et que la configuration complète fonctionne, je peux donc accéder au serveur à partir d'Internet via une adresse IP publique (WAN1) et acheminer le réseau local à Internet via WAN2 tout en pouvant accéder au serveur via son adresse IP publique (WAN1). LAN. C'est le routage qui devait être configuré pour le faire fonctionner de la manière que j'avais décrite précédemment:

ip route del default table main
ip route add default via 192.168.1.20 dev eth3 table main

ip route add 217.XXX.XXX.160/27 dev eth2 src 217.XXX.XXX.185 table T1
ip route add default via 217.XXX.XXX.161 dev eth2 table T1
ip route add 192.168.2.0/24 dev br0 table T1
ip route add 192.168.1.0/24 dev eth3 table T1
ip route add 127.0.0.0/8 dev lo table T1

ip route add 192.168.1.0/24 dev eth3 src 192.168.1.1 table T2
ip route add default via 192.168.1.20 dev eth3 table T2
ip route add 192.168.2.0/24 dev br0 table T2
ip route add 217.XXX.XXX.160/27 dev eth2 table T2
ip route add 127.0.0.0/8 dev lo table T2

ip rule add from 217.XXX.XXX.185 table T1
ip rule add from 192.168.1.1 table T2

C'est ça. Donc, c'est résolu.

1
user241281