Правила Iptables NAT и Masquerade - что они делают?
Я следовал руководству (на немецком языке) по настройке маршрутизатора WiFi (точки доступа) на Raspberry Pi. Следуя инструкции, я должен был добавить следующие приемлемые правила:
iptables -A FORWARD -o eth0 -i wlan0 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
К сожалению, я не имею никакого опыта работы с iptables и хотел бы знать, что означают / делают правила?
1 ответ
Я прохожу правила и сразу объясняю каждое из них: для понимания процесса обратитесь к таблице iptables
iptables -A FORWARD -o eth0 -i wlan0 -m conntrack --ctstate NEW -j ACCEPT
в FORWARD
цепочку, вы добавили правило, которое гласит: если какой-либо пакет приходит заново, из wlan0
в eth0
фильтр пропускает его и отслеживает это соединение как NEW
(что означает: следует за его изменением состояния).
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Для любых приходящих пакетов, отслеженных как ESTABLISHED
или же RELATED
фильтр пропускает
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Для NAT
таблица (которая содержит FORWARD
цепь), в POSROUTING
цепочка, любой пакет, выходящий eth0
забывает свой внутренний IP-адрес (таким образом, остается за NAT) и получает один из eth0
: MASQUERADE
обозначает маскировку адреса.