
У меня есть установка, состоящая из 3 машин Linux (CentOS):
Все машины, которые напрямую подключены, могут пинговать друг друга.
Я пытаюсь настроить правила iptable, чтобы разрешить VM3 пинговать VM1 и наоборот, а затем подключить VM1 к Интернету и предоставить всем 3 машинам доступ к Интернету.
Я включил переадресацию IP
net.ipv4.ip_forward = 1
Я добавил два правила iptables в VM2
-A FORWARD -i eth1 -o eth2 -j ACCEPT
-A FORWARD -i eth2 -o eth1 -j ACCEPT
Я установил значение по умолчанию в шлюзе /etc/sysconfig/network
VM3 - 172.16.61.1
VM2 - 172.16.60.1
В VM3 я выполнил команду
> ip route get 172.16.60.1
172.16.60.1 via 172.16.61.1 dev eth1 src 172.16.61.2
Однако это не сработало. Можете ли вы мне помочь?
решение1
Чтобы разрешить VM3 доступ к VM1, вам необходимо добавить MASQUERADE
правило в таблицу nat в POSTROUTING
цепочке. Например:
iptable -A POSTROUTING -o eth1 -j MASQUERADE
Это по сути поместит VM3 за NAT VM3.