Переадресация портов + совместное соединение с Ubuntu

4

Поскольку порты Ethernet моего беспроводного маршрутизатора повреждены, я установил общее беспроводное соединение от моего ноутбука (у которого есть Wi-Fi) к моему eMac (который не имеет) через перекрестный кабель Ethernet. Ноутбук находится позади маршрутизатора 192.168.1.131, а eMac находится позади ноутбука как 10.42.43.1.

Ноутбук работает под управлением Ubuntu 9.10 (Karmic). Я достиг общего подключения через апплет NetworkManager. Я щелкнул правой кнопкой мыши на значке сети в правом верхнем углу, пошел в Редактировать соединения, выбрал проводное соединение с именем «Auto eth0», нажал «Изменить ...», перешел на вкладку «Настройки IPv4» и выбрал метод «Общий доступ». на другие компьютеры ". Теперь eMac может получить доступ к Интернету.

Теперь я хочу включить переадресацию портов. Есть игра, в которую я хочу играть, для которой нужен перенаправленный порт 6112 (как TCP, так и UDP). Я настроил маршрутизатор для включения переадресации портов для 192.168.1.131(ноутбука), но переадресация портов по-прежнему недоступна на eMac.

Я предполагаю, что мне нужно притвориться, что мой ноутбук является маршрутизатором и настроить переадресацию портов на нем, указывая, что входящие соединения с ноутбуком ( 192.168.1.131) должны быть перенаправлены на eMac по общему соединению ( 10.42.43.1). Таким образом, пакеты, поступающие в маршрутизатор через порт 6112, будут перенаправлены на ноутбук (через маршрутизатор), а затем в eMac (через ноутбук).

Мой вопрос: как бы я это сделал в Ubuntu (в свете присутствия NetworkManager)? Кроме того, если я не могу заставить это работать, кто-нибудь возражает против того, чтобы устраивать комп-топ? : D

Джои Адамс
источник

Ответы:

0

Ничего не знаю об утилитах конфигурации Ubuntu, но вот классический способ:

echo 1 > /proc/sys/net/ipv4/ip_forward # enable forwarding
iptables -I FORWARD -p tcp -d 192.168.1.131 --dport 6112 -j ACCEPT #just to be sure firewall doesn't block
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 6112 -j DNAT --to 10.42.43.1 #actual forward
#same for UDP
iptables -I FORWARD -p udp -d 192.168.1.131 --dport 6112 -j ACCEPT
iptables -t nat -A PREROUTING -p udp -i eth0 --dport 6112 -j DNAT --to 10.42.43.1 

Вы должны изменить -i eth0 на свое имя WLAN-соединения. В общем-то

iptables -t nat -A PREROUTING [-p protocol] --dport [external port on router] -i ${WAN} -j DNAT --to [ip/port to forward to]

Для получения дополнительной информации обратитесь к руководству Frozenentux iptables .

gogiel
источник
0

Рассмотрите возможность установки пакета Shorewall для настройки маршрутизации. Ваши правила пересылки будут выполнены с использованием правил DNAT. Я бы предложил начать с конфигурации интерфейса примера 2.

BillThor
источник