Как настроить переадресацию портов в iptables Ubuntu?
Эта цитата должна объяснить мне, как это сделать, но я не понимаю...
Затем я добавил следующие правила для пересылки всех http-запросов (поступающих на порт 80) на порт 3128 сервера Squid:
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.1.1:3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
с
iptables -t nat -A PREROUTING -i venet0 -p tcp --dport 80 -j DNAT --to 127.0.0.1:3128
iptables -t nat -A PREROUTING -i venet0:0 -p tcp --dport 80 -j REDIRECT --to-port 3128
Это должно работать, но это не так. мой iptables
пусты и /etc/network/interface
является следующим:
auto lo
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0
broadcast 127.255.255.255
up ip route replace 127.0.0.0/8 dev lo
# Auto generated venet0 interfaces
auto venet0
iface venet0 inet static
address 127.0.0.1
netmask 255.255.255.255
broadcast 0.0.0.0
up route add default dev venet0
iface venet0 inet6 static
address ::2
netmask 128
up ip -6 r a default dev venet0
up ip addr add {...externalIPv6...} dev venet0
auto venet0:0
iface venet0:0 inet static
address {...externalIP...}
netmask 255.255.255.255
1 ответ
Я начну это как ответ, событие, хотя это не так (пока, надеюсь). Причина, по которой я это делаю, заключается в том, что я считаю, что для решения этой проблемы потребуется несколько итераций.
Вы, правила iptables, выглядите хорошо для меня, но ваш файл /etc/network/interfaces имеет несколько проблем, по моему мнению. Вы скопировали это откуда-то или адаптировали к вашим потребностям?
Проблемы, которые я вижу:
- Зачем указывать петлевой интерфейс? Обычно первые две строки строфы в порядке.
- Вы назначаете два адреса одному интерфейсу venet0.
- Маска подсети для первого раздела venet0 слишком ограничена и несовместима с широковещательным адресом.
- Вашему второму разделу для venet0 назначены два адреса: ваш внешний IPv6-адрес и::2.
- В строфе для venet0 маска сети слишком ограничена.
- Одинаковому интерфейсу venet0/venet0:0 назначены петлевые и внешние адреса, в чем смысл?
Было бы полезно, если бы вы сказали нам, что вы пытаетесь сделать с VMWare, сейчас я в растерянности.