Здравствуйте, у меня есть этот скрипт маршрутизации, который я использую, который запускается, когда все сетевые интерфейсы вставлены:
#!/bin/sh
PATH=/usr/sbin:/sbin:/bin:/usr/bin
#
# delete all existing rules.
#
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
# Always accept loopback traffic
iptables -A INPUT -i lo -j ACCEPT
# Allow established connections, and those not coming from the outside
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! wlan0 -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow outgoing connections from the LAN side.
iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
# Masquerade.
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
# Don't forward from the outside to the inside.
iptables -A FORWARD -i wlan0 -o wlan0 -j REJECT
# Enable routing.
echo 1 > /proc/sys/net/ipv4/ip_forward
wlan0 - это мое соединение с Wi-Fi для моего Wi-Fi-телефона Android, диапазон ip - 192.168 .43.0 / 24 eth0 - это мое подключение к локальной сети, диапазон ip: 10.1.1.0/24
Я заметил, когда скрипт попадает в эту строку:
iptables -A INPUT -m state --state NEW -i ! wlan0 -j ACCEPT
Он появляется с ошибкой:
Bad argument `wlan0'
Try `iptables -h' or 'iptables --help' for more information.
Будучи noob с iptables, я не слишком уверен, что не так.
Кто-нибудь сможет просветить меня на этом? [!d6 ]