2012-05-29 2 views
2

Я хочу перенаправить некоторый порт из WAN на свой ноутбук. Проблема в том, что у ноутбука есть разные IP-адреса в беспроводной сети, как на кабельной LAN. Есть ли способ использовать имя компьютера в iptables?Возможно ли использовать имя компьютера в iptables

Iptables правила переадресации портов (с использованием IP-адреса) должно быть:

iptables -t nat -A PREROUTING -p tcp -d 192.168.102.37 --dport 422 -j DNAT --to 192.168.102.37:22 

Могу ли я что-то вроде

iptables -t nat -A PREROUTING -p tcp -d mycomputername --dport 422 -j DNAT --to mycomputername:22 

и имя компьютера писать будет решена в текущем IP?

спасибо. не

+0

Почему вы не можете указать статические IP-адреса ПК? – ThiefMaster

ответ

1

Нет - Попытка это дает «Bad IP-адрес» (по крайней мере, в ст 1.4.7)

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

Руководство по IPTables также рекомендует не указывать доменное имя.

1

Это ужасная идея (но есть решения (специфичные для IP, а также MAC), см. Ниже). Как говорится в другом ответе, справочная страница рекомендует против этого. Но это больше, чем безопасность (DNS по своей сути небезопасен) - это также то, что есть штраф за производительность. При условии, что вы можете иметь сопоставление хостов, но все же, лучше указать IP-адрес (но даже тогда: вы можете переопределить или скорее указать, что используемые сначала - DNS или хосты, и вообще использование имен вместо IP - рискованный бизнес).

Два возможных решения (связанное с IP - если вы не можете этого сделать, см. Третий): Сначала назначьте IP (или, если необходимо, IP-адреса) на основе MAC-адресов (адресов).

В качестве альтернативы, у вас могут быть два разных правила: это, в конце концов, цепочка; он продолжается до тех пор, пока у него не будет ответа. Поэтому просто укажите два правила, каждый с соответствующими IP-адресами. Вероятно, это идеальное решение (и, возможно, первое решение - одно и то же). Ах, и теперь я вижу, что кто-то прокомментировал статические IP-адреса. Это действительно ответ - вы не динамически назначаете IP-адреса. Но если у вас есть динамические IP-адреса, есть еще один способ:

Если вы не можете самостоятельно назначать IP-адреса (например, не под вашим контролем), вы можете использовать модуль mac iptables. Дополнительную информацию см. На странице руководства.