Mam urządzenie NanoPi M1 Plus z systemem operacyjnym Ubuntu, którego używam jako routera. Urządzenie pobiera Internet przez kabel ethernetowy (interfejs eth0), a WiFi AP jest dostępny przez interfejs wlan0.
Napisałem reguły iptables, ale nie działa. I włączono IP_FORWARDING.
Również przy wykonywaniu iptables-restore > /etc/iptables.ipv4.nat
polecenie zamarza, a wyjście nie jest drukowane na terminalu.
iptables.ipv4.nat
*filter
:INPUT ACCEPT [186:14306]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [131:13477]
-A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i wlan0 -o eth0 -j ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT [142:11472]
:INPUT ACCEPT [27:2092]
:OUTPUT ACCEPT [28:2049]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
Na czym polega problem?
linux
networking
wireless-networking
iptables
nat
ron123456
źródło
źródło
Odpowiedzi:
Czeka wkład . Celem iptables-restore jest odczytanie zestawu reguł z pliku, ale użyłeś niewłaściwego operatora przekierowania i powiedziałeś powłoce, że Napisz do ten plik. Właściwym operatorem z tym poleceniem jest
<
.Zauważ, że używanie
>
natychmiast opróżnił poprzednią zawartość pliku, więc upewnij się, że przed ponowieniem wypełnił ją ponownie regułami.Poza tym zestaw reguł nie ma żadnych oczywistych problemów. Możesz mieć problemy gdzie indziej, szczególnie z funkcją filtrowania uRPF, która odmawia przyjęcia pakietów z „złego” interfejsu. Upewnij się, że wyłączasz go przez sysctl, ustawiając
net.ipv4.conf.all.rp_filter
do 0 dla „off” (lub 2 dla „loose”).źródło
net.ipv4.conf.all.rp_filter
. Ale jeśli używam zewnętrznego interfejsu wifi wlan1 jako stacji i wprowadzam zmiany w iptables.e.usingwlan1
zamiasteth0
.. iptables forwarding działa doskonale