Доброго времени суток всем.
Передо мной возникла такая задача: имеется D-Link DIR-300 D1 (прошивка 2.5.4) и необходимо весь трафик, идущий с wifi-сети, перенаправлять на локальный "сервер" (192.168.0.100), где дальше уже его обрабатывать, при этом стараясь не затронуть трафик проводной сети (eth0 и eth1 - сервер и ноут, которые используют wan для интернетов). Для WiFi сети интернет не важен / не нужен.
Что уже пробовал:
1.
Код:
iptables -t nat -A PREROUTING ! -d 192.168.0.1 -i wlan0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.100:80
просто проскочил, спокойно открывал страницы.
2.
Код:
route add default gateway 192.168.0.100
iptables -t nat -A POSTROUTING -o eth0 -p tcp --dport 80 -j MASQUERADE
Все намертво виснет + это также отражается на проводной сети.
3. На этом этапе выяснилось, что имеется общий бридж, поэтому была предпринята такая попытка:
Код:
iptables -t nat -A PREROUTING ! -d 192.168.0.1 -i br0 -m physdev --physdev-in wlan0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.100:80
выдал, что не знает chain/target/match
В выхлопе lsmod модуля physdev нет и не подгружается, выдает
Код:
insmod: chdir(2.6.30.9): No such file or directory
4. Крайним вариантом было такое:
Код:
iptables -t nat -A PREROUTING ! -d 192.168.0.1 -i br0 -s 192.168.0.0/24 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.100:80
- браузер долго думает, потом вылетает с "без доступа к сети".
Если необходимо, то вот
дамп общения "сервера" и девайса (0.104), с которого я пытался открыть страницу. (С момента отправки запроса до сообщения "Нет доступа к сети")
Где я ошибся? Возможны ли вообще варианты реализации такой задачи?
Заранее благодарю.