У меня есть Ubuntu box, который я хочу использовать в качестве экземпляра NAT (среди прочего). Я бы предпочел не использовать NAT AMI, предоставляемые Amazon, и вместо этого сам настраивать NAT.
В настоящее время мой хост имеет единый сетевой интерфейс (как показано на http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html ).
Могу ли я настроить свой хост Ubuntu в качестве экземпляра NAT для других хостов в моей сети Amazon?
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
5 454 MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0
Я попытался настроить правило NAT на хосте Ubuntu (10.200.0.51). Мой второй хост находится в другой сети (10.200.10.41/24). Итак, я написал:
route add -net 10.200.0.0 netmask 255.255.255.0 dev eth0 # So I can reach 10.200.0.51
route add default gw 10.200.0.51
Но машина потеряла связь.
Что я неправильно понимаю в отношении использования экземпляров NAT и маршрутизации в Amazon?
amazon-ec2
iptables
nat
jjmontes
источник
источник
Ответы:
Вы можете проверить скрипт Amazon для настройки NAT на компьютере с Linux, он поставляется с AMI по умолчанию ami-vpc-nat в
/usr/local/sbin/configure-pat.sh
Это выглядит так:
источник
Я установил Amazon NAT AMI и проверил соответствующую конфигурацию:
Кроме того, у машины должен быть общедоступный IP-адрес, а проверку Sourc / Dest необходимо отключить.
Эта машина может быть использована в качестве экземпляра NAT.
Маршрутизация для других хостов настраивается на уровне EC2 (с помощью функции «Таблица маршрутизации»).
источник
Есть несколько инструкций, которые мне помогли.
Примечания:
На «nat-instance» от имени пользователя root:
после этого:
через Консоль AWS:
В других случаях без EIP:
UPD : я обнаружил, что каждый новый экземпляр в моем VPC правильно обнаруживал интернет после проверки связи с gw по умолчанию.
Так:
Я знаю, это не проблема, но это может сэкономить время
источник