Назад | Перейти на главную страницу

как создать двунаправленный мост с помощью iptables

Настройка: у меня есть ЖК-телевизор Samsung, подключенный через eth0 к Thinkpad T41 под управлением Ubuntu 10.10, который подключен по беспроводной сети к домашнему маршрутизатору.

Я пытаюсь заставить приложение дистанционного управления Samsung работать на моем iPad, но приложение не позволяет мне вводить IP-адрес и обнаруживает телевизор только в том случае, если он находится в той же подсети, что и iPad (неудачно).

Итак, мне нужен ноутбук для маршрутизации пакетов от eth0 к беспроводному интерфейсу (wlan0), и мне нужно около 3 портов на интерфейсе wlan0 для пересылки на телевизор samsung.

Надеюсь, все это имеет смысл. Я возился с iptables, и теперь Samsung может получить доступ к Интернету через беспроводную сеть ноутбука, но отображение wlan0 обратно на телевизор Samsung ускользает от меня.

Классический способ объединения сетей не на уровне IP, а на уровне Ethernet. Вы можете установить мост (brctl) и загляните в ebtables брандмауэром. Это соединит все пакеты (так что вам, вероятно, понадобится один и тот же диапазон IP-адресов на обоих концах моста). Это как подключить кабель напрямую, он также позаботится о любых магических открытиях, которые совершает самсунг.

Если вам просто нужно перенаправить 3 IP-порта, вы можете использовать iptables с целью DNAT:

iptables -t nat -A PREROUTING -p tcp (-i eth0) -d xxx.xxx.xxx.xxx --dport zz -j DNAT --to yy.yy.yy.yy:zz

Или проще (без мостов) и, возможно, достаточно: tcp-прокси:

simpleproxy -d -L zz -R yy.yy.yy.yy:zz

это Как сделать беспроводной мост Ubuntu содержит некоторую информацию. В частности, вам необходимо:

  • установить bridge-utils пакет с apt-get install bridge-utils
  • модифицировать /etc/network/interfaces (добавьте интерфейс br0, установите беспроводное устройство в режим мастера).
  • добавьте правила брандмауэра iptables для включения маскарадинга
  • включите переадресацию IP в /etc/sysctl.conf.