VPN bir EC2 örneğinde sonlanır, o örneğin tünel adresine ulaşabilirsiniz, ancak onun üzerinden başka bir özel ana makineye geçmesi gereken trafik kaybolur. Bunlar iki farklı testtir ve karıştırılmaları saatler kaybettirir. İlki örneğe ulaşıp ulaşamadığınızı sorar; ikincisi kendi olmayan bir hedef için trafiği iletmesini ister, ki bunun için Linux yönlendirmesi, güvenlik duvarı ilkesi, karşı tarafta bir yol ve konuk işletim sistemiyle hiçbir ilgisi olmayan AWS düzeyinde bir izin gerekir. Konsolda hiçbir şey bu farka dikkat çekmez. Belirti bir yönlendirme arızası gibi görünür ve genellikle değildir.

Herhangi bir şeyi değiştirmeden önce iki testi ayırın

Ağ geçidine ulaşmak tüneli, adresine giden yolu ve değişime izin veren güvenlik grubunu kanıtlar. Başka bir ana makine için iletim bunların hiçbirini kanıtlamaz: farklı bir kaynak adresi, farklı bir hedef ve bunun için mutlaka oluşturulmamış bir roldeki örneği kullanır. İki testi ayrı ayrı yazın ve hangisinin başarısız olduğunu not edin, çünkü her birinin düzeltmesi farklı bir konsoldadır. Yalnızca tünelleri sonlandırmak için oluşturulmuş bir ağ geçidi örneğinin başka bir şeyi iletmek için hiçbir nedeni yoktur ve varsayılanları bunu yansıtır. Bu yüzden ikinci test, birincide küçük bir ayar değil, kendi kurulumunu gerektirir.

Ağ geçidine çalışan bir ping ile onun ötesindeki ana makineye başarısız olan bir ping aralıklı bir sorun değildir. İletebileceği kendisine söylenmemiş bir örneğin beklenen davranışıdır.

Bir ayara dokunmadan önce yolu yazın

İstemci önekini, ileten örneği veya ağ arayüzünü, hedef alt ağı ve yanıt yolunu kaydedin. Bir örneğe işaret eden VPC yol tablosu girdisi örneğin işletim sistemini iletim için yapılandırmaz ve iletim açık bir konuk çekirdeği VPC yolu oluşturmaz. Bu ilişkinin iki ucu da var olmalıdır ve bunlar farklı yerlerde, farklı erişime sahip kişilerce düzenlenir.

Ardından kaynak/hedef denetimi ayarını gerçek iletim bileşeninde inceleyin, VPC'deki her örnekte değil. AWS, başkaları için trafik ileten bir örneğin bu denetimi kapalı tutması gerektiğini ve ayarın tüm VPC için varsayılan değil, her örnek için karar olduğunu belgeler.

Dört sınır ve denetim bunlardan yalnızca biri

Yolu dört soru olarak ele alın ve sırayla yanıtlayın. İlk başarısız yanıt işin nerede olduğunu gösterir ve diğerlerinin hiçbiri bunu telafi etmez.

BoundaryQuestion it answers
VPC route tablesDo the destinations and replies select the intended gateway?
Forwarding instanceDo the AWS check and the guest OS both permit forwarding?
Access policyDo security groups, ACLs and host rules allow the exchange?
DestinationCan the service accept that source and return a reply?

Sıra önemlidir çünkü denetlemek ucuzdur: yollar tek sayfada görünür, denetim tek bir niteliktir ve hedefin görüşü genellikle birinin sorduğu son şeydir.

Çeviri, hedefin hangi kaynağı gördüğünü değiştirir

Yönlendirilmiş bir tasarım istemcinin kaynak adresini korur, bu yüzden hedefin istemci önekine dönüş yoluna ihtiyacı vardır. Çevrilmiş bir tasarım bunun yerine ağ geçidinin adresini sunar, bu da o gereksinimi ortadan kaldırır ve yerine ağ geçidinde bir durum tablosu koyar. İlgisiz bir örnek kullandı ve çalışıyor göründü diye çeviri eklemek yerine amaçladığınız mimariye göre karar verin.

Çeviriyorsanız kuralı istemci öneki ve amaçlanan hedefle sınırlayın. Koruyorsanız karşı tarafın yolu gerçekten bildiğini doğrulayın, öğreneceğini varsaymayın.

Özgün istemciden test edin, sonra değişikliği koruyun

Ağ geçidinde üretilen bir istek başarılı olabilirken iletilen istek başarısız olur, çünkü farklı bir kaynak ve farklı bir iletim durumudur. Hedefli bir düzeltmeden sonra başarısız olan tam istemciden-kaynağa testini aynı istemciden yineleyin ve isteğin ulaştığını değil, yanıtın geri döndüğünü doğrulayın.

Son olarak ayarı ağ geçidinin yönetilen yapılandırmasına koyun ki yedek örnek onu alsın. Elle yapılan bir istisnaya bağlı başarılı bir test, bir sonraki yeniden oluşturmada süresi dolan bir testtir ve onu keşfeden kişi nedenini hatırlamak için orada olmayacaktır.

İlgili makaleler