Mam pole Ubuntu, którego chcę używać jako instancji NAT (między innymi). Wolałbym unikać używania NAT AMI dostarczonych przez Amazon, zamiast samemu konfigurować NAT.
Obecnie mój host ma jeden interfejs sieciowy (jak pokazano w http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html ).
Czy powinienem być w stanie skonfigurować mojego hosta Ubuntu jako instancję NAT dla innych hostów w mojej sieci 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
Próbowałem skonfigurować regułę NAT na hoście Ubuntu (10.200.0.51). Mój drugi host jest w innej sieci (10.200.10.41/24). Więc napisałem:
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
Ale urządzenie straciło połączenie.
Co nieporozumienie przestawiam na używanie instancji NAT i routingu w Amazon?
amazon-ec2
iptables
nat
jjmontes
źródło
źródło
Odpowiedzi:
Możesz sprawdzić skrypt Amazon, aby skonfigurować NAT na komputerze z systemem Linux, jest on dostarczany z domyślnym AMI ami-vpc-nat, w
/usr/local/sbin/configure-pat.sh
To wygląda tak:
źródło
Zainstalowałem Amazon NAT AMI i sprawdziłem odpowiednią konfigurację:
Ponadto maszyna musi mieć publiczny adres IP, a kontrola Sourc / Dest musi być wyłączona.
Ten komputer może być następnie użyty jako instancja NAT.
Trasowanie dla innych hostów jest konfigurowane na poziomie EC2 (przy użyciu funkcji „Tabela routingu”).
źródło
Jest kilka instrukcji, które mi pomogły.
Uwagi:
W „nat-instance” jako użytkownik root:
po tym:
poprzez konsolę AWS:
W innych przypadkach bez EIP:
UPD : Dowiedziałem się, że każde nowe wystąpienie w moim VPC poprawnie wykrywało internet po pingowaniu domyślnego gw.
Więc:
Wiem, że to nie jest problem, ale może zaoszczędzić trochę czasu
źródło