Итак, у меня есть Linux-бокс с двумя беспроводными интерфейсами, один - это станция, а другой - точка доступа.
wlan0 (станция) - подключен к Интернету
wlan1 (AP) - К нему подключаются другие клиенты.
Я бы хотел, чтобы клиенты, подключенные к wlan1, имели доступ к Интернету на wlan0. И я бы хотел сделать это с помощью iptables, поскольку в моем ядре нет поддержки моста ...
Вот что я до сих пор пробовал с iptables, но он не работает:
iptables -A FORWARD -i wlan0 -o wlan1 -j ACCEPT
iptables -A FORWARD -i wlan1 -o wlan0 -j ACCEPT
Буду признателен за любую помощь.
Во-первых, чтобы позволить хостам, подключенным к вашему частному интерфейсу, выходить в Интернет, вам не нужно соединять интерфейсы, вам нужно маршрутизировать пакеты, поступающие на один интерфейс, на другой, где они выходят в «дикую природу».
Для этого вам нужно всего лишь:
Измените адрес источника для пакетов, выходящих в Интернет
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A FORWARD -i wlan1 -o wlan0 -j ACCEPT
iptables -A FORWARD -i wlan0 -o wlan1 -m state --state ESTABLISHED,RELATED \
-j ACCEPT
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
Это должно сработать.