Încerc să direcționez traficul între diferite rețele și am urmat un ghid pe care l-am găsit aici:
https://devconnected.com/how-to-add-route-on-linux/
Iată o diagramă care sper să descrie în mod adecvat aranjamentul cu care lucrez:
Windows 10 Ubuntu Linux
172.31.0.X <----------> 172.31.0.33 (eno1)
10.0.40.1 (enp2s0f0) <----------> 10.0.40.10
Am o rută permanentă setată pe PC-ul Windows pentru a direcționa orice trafic pentru 10.0.40.0/24 prin 172.31.0.33.
Route Print output
Mașina Ubuntu este configurată să direcționeze traficul destinat 10.0.40.0/24 prin 10.0.40.1.
ieșire ip r
Pingul 10.0.40.10 de pe mașina Ubuntu funcționează conform așteptărilor.
Dacă dau ping la 10.0.40.10 de pe computerul Windows, pot vedea că mesajele ICMP ajung la interfața 172.31.0.33 de pe mașina Ubuntu folosind tcpdump.
Nu văd trafic pe interfața 10.0.40.1 pe mașina respectivă. Se pare că mașina Ubuntu nu direcționează traficul așa cum m-aș aștepta.
Poate cineva să facă lumină asupra a ceea ce am ratat?
Adăugarea rezultatelor:
iptables -S
pentru mașina Ubuntu:
sudo iptables -S
# Avertisment: tabele iptables-legacy sunt prezente, utilizați iptables-legacy pentru a le vedea
-P ACCEPT INTRARE
-P ACCEPTĂ ÎN ÎNTÂMPRE
-P ACCEPT IEȘIRE
-A FORWARD -i eno1 -j ACCEPT
-A FORWARD -i enp2s0f0 -j ACCEPT
adi@LabBuildServer:~$ sudo iptables-legacy -S
[sudo] parola pentru adi:
-P ACCEPT INTRARE
-P PĂDURA ÎNTÂMPRE
-P ACCEPT IEȘIRE
-N DOCKER
-N DOCKER-IZOLARE-ETAPA-1
-N DOCKER-ETAPA DE IZOLARE-2
-N DOCKER-UTILIZATOR
-UN FORWARD -j DOCKER-UTILIZATOR
-A ÎNAINTE -j DOCKER-ETAPA DE IZOLARE-1
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,STABLISHED -j ACCEPT
-A FORWARD -o docker0 -j DOCKER
-A ÎNTÂMPRE -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
-A FORWARD -o br-e925d11be2da -m conntrack --ctstate RELATED,ESTABLISHED -j ACCE PT
-A FORWARD -o br-e925d11be2da -j DOCKER
-A ÎNTÂMPRE -i br-e925d11be2da ! -o br-e925d11be2da -j ACCEPT
-A FORWARD -i br-e925d11be2da -o br-e925d11be2da -j ACCEPT
-A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-ISOLATION-STAGE-1 -i br-e925d11be2da ! -o br-e925d11be2da -j DOCKER-IS OLATION-STAGE-2
-A DOCKER-IZOLARE-ETAPA-1 -j RETURNARE
-A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
-A DOCKER-ISOLATION-STAGE-2 -o br-e925d11be2da -j DROP
-A DOCKER-IZOLARE-ETAPA-2 -j RETURNARE
-UN DOCKER-USER -j RETURN
Ieșire din:
ruta ip
pe gazda Linux:
ruta ip
implicit prin 10.0.40.1 dev br-POE proto static
10.0.40.0/24 dev br-POE proto kernel scope link src 10.0.40.10
Mașină Ubuntu:
adi@LabBuildServer:~$ sudo iptables -t nat -L
[sudo] parola pentru adi:
# Avertisment: tabele iptables-legacy sunt prezente, utilizați iptables-legacy pentru a le vedea
PRERUUTARE în lanț (politica ACCEPTĂ)
target prot opt sursă destinație
INTRARE în lanț (politica ACCEPTĂ)
target prot opt sursă destinație
POSTOUTING în lanț (politica ACCEPT)
target prot opt sursă destinație
MASQUERADE toate -- oriunde oriunde
MASQUERADE toate -- oriunde oriunde
Ieșire în lanț (politica ACCEPT)
target prot opt sursă destinație