У меня есть сервер Linux за комбинацией кабельного модема и маршрутизатора провайдера. С помощью некоторых хаков мне удалось заставить работать переадресацию портов и исключения DHCP в udhcpd. Но я не смог сделать NAT loopback: я могу связаться с сервером за пределами моей локальной сети, но дома я не могу. Маршрутизатор использует брандмауэр iptables от Arno, но его старую версию, поэтому в нем нет плагина nat loopback. Я хочу, чтобы он работал с простым iptables.
Вот мой текущий набор правил:http://pastebin.com/SFNeY0Cu
Я нашел эти команды:
iptables -t nat -A POSTROUTING -d 192.168.0.150 -s 192.168.0.0/24 -j SNAT --to-source 192.168.0.1
iptables -t nat -A PREROUTING -d $WANIP -m tcp -p tcp -j DNAT --to-destination $SERVERIP
Может кто-нибудь объяснить мне эти команды? Я думаю, что я понимаю вторую, но первая мне не ясна. Что это за 192.168.0.150? Или 192.168.0.1? Мой домашний сервер находится на $SERVERIP, а мой внешний адрес $WANIP
Спасибо за любую помощь.