Boa tarde. Aqui está um diagrama da minha rede doméstica:
Internal
Interface
x.x.1.14 x.x.1.99
--------- --------- --------- ----------
| | | | | | | |
| Comp1 |---|Rasp Pi|---|Router |---|Internet|
| | | | | | | | |
--------- --------- | --------- ----------
x.x.0.123 | x.x.0.1 8.8.8.8
External |
Interface | ---------
| | |
|-| Comp2 |
| |
---------
x.x.0.135
Conectei duas redes em casa (uma WiFi e uma com fio) executando iptables no Ubuntu 24.04.1 LTS em um Raspberry Pi. Do Comp1, consegui fazer ping no Comp2 e na internet, mas então fiz algo tolo no meu Pi (alterei a senha de root e joguei fora o post-it) e tive que refazer meu Pi. Refiz o Pi, com as mesmas configurações de rede, e agora posso fazer ping no Comp2 do Comp1 novamente, mas não na internet. Tenho uma infinidade de notas que digitei ao tentar fazer o Pi funcionar pela primeira vez, mas nada que fiz até agora me deu conectividade com a internet. Aqui está uma lista do que tentei até agora:
Não
sudo iptables -t nat -A POSTROUTING -o 192.168.0.123 -j MASQUERADE
sudo iptables -A FORWARD -i 192.168.0.123 -o 192.168.1.99 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i 192.168.1.99 -o 192.168.0.123 -j ACCEPT
Não
sudo iptables -t nat -A POSTROUTING -o 192.168.0.123 -j MASQUERADE
sudo iptables -A FORWARD -i 192.168.1.99 -o 192.168.0.123 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i 192.168.0.123 -o 192.168.1.99 -j ACCEPT
Não
sudo iptables -t nat -A POSTROUTING -o 192.168.1.99 -j MASQUERADE
sudo iptables -A FORWARD -i 192.168.0.123 -o 192.168.1.99 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i 192.168.1.99 -o 192.168.0.123 -j ACCEPT
Não
sudo iptables -t nat -A POSTROUTING -o 192.168.1.99 -j MASQUERADE
sudo iptables -A FORWARD -i 192.168.1.99 -o 192.168.0.123 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i 192.168.0.123 -o 192.168.1.99 -j ACCEPT
Não
sudo iptables -I FORWARD -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT
sudo iptables -I FORWARD -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT
Não
sudo iptables -A FORWARD -i 192.168.0.123 -o 192.168.1.99 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i 192.168.1.99 -o 192.168.0.123 -j ACCEPT
Não
sudo iptables -I FORWARD -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT
sudo iptables -I FORWARD -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT
Não
sudo iptables -I FORWARD -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT
sudo iptables -I FORWARD -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT
Também adicionei a rota para a segunda rede na caixa Linux:
$ sudo ip route add 192.168.0.0/24 via 192.168.1.99
Eu tentei os flip-flops porque na primeira vez cometi um erro e inverti os rótulos de IP no que encontrei na internet e funcionou. ENTÃO, alguém consegue ver o que eu fiz errado ou o que estou esquecendo?
Obrigado,
João
e obrigado pela resposta rápida. Ok, aqui estão as informações:
Comp1 - Linux ens160 é 192.168.1.14
Pi - Linux eth0 é 192.168.1.99 wlan0 é 192.168.0.123
Comp2 - Windows 192.168.0.135
iptables-salvar
# Generated by iptables-save v1.8.10 (nf_tables) on Tue Nov 26 12:54:31 2024
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [204777:66752196]
:OUTPUT ACCEPT [0:0]
-A FORWARD -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT
-A FORWARD -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT
COMMIT
# Completed on Tue Nov 26 12:54:31 2024
# Generated by iptables-save v1.8.10 (nf_tables) on Tue Nov 26 12:54:31 2024
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [117749:8274546]
-A POSTROUTING -o 192.168.0.123 -j MASQUERADE
-A POSTROUTING -o 192.168.0.123 -j MASQUERADE
COMMIT
# Completed on Tue Nov 26 12:54:31 2024
João
E a saída de sysctl -p:
jfxb@Pi5:~$ sudo sysctl -p
[sudo] password for jfxb:
net.ipv4.ip_forward = 1
jfxb@Pi5:~$