NAT ve UDP yanıtları


20

Sağlık kontrolü lütfen.

Makine A'dan bir NAT'ın arkasındaki UDP paketlerini Makine B'nin bağlantı noktası N'ye gönderirsem, burada Makine B NAT'ın dışındadır (İnternet'in başka bir yerinde), NAT'ın, Makine B'den alınan UDP paketlerini N bağlantı noktasına geri aktarmasını bekleyebilir miyim? NAT'ta manuel bağlantı noktası iletme gerektirmeden, Makine A'daki N bağlantı noktası?

Yanıtlar:


21

Yalnızca orijinal giden veri biriminin kaynak bağlantı noktası da N bağlantı noktasıysa ve NAT kaynak bağlantı noktasını kaydırmayı seçmediyse.

Yani, A Makinesi'nden gelen ilk UDP datagramı LAN'ınızda şöyle görünür:

       Source IP: MachineAPrivate  
     Source Port: PortA     <-- note this is typically different than the destination port  
  Destination IP: MachineBPublic  
Destination Port: PortN  

Daha sonra, NAT tarafından giden yönde çevrildikten sonra, şuna benzer:

       Source IP: NATPublic  
     Source Port: PortC   <-- note this may or may not be the same as "PortA" above  
  Destination IP: MachineBPublic  
Destination Port: PortN  

Şimdi, B Makinesi yanıt verdiğinde, yanıt genellikle şöyle görünür:

       Source IP: MachineBPublic  
     Source Port: PortN  
  Destination IP: NATPublic  
Destination Port: PortC  

Ardından, gelen NAT çeviri işleminden geçtikten sonra:

       Source IP: MachineBPublic  
     Source Port: PortN  
  Destination IP: MachineAPrivate  
Destination Port: PortA  

Yani, IF Makinası Bir hedef port ( "Liman N") ile aynı kaynak bağlantı noktasından çerçeve gönderir ve IF NAT o kaynak noktasını koruyabilmektedir (yani o zaman mümkün kaynak bağlantı noktaları korumak üzere yapılandırıldığını ve bu kaynak portu ) kullanımda değilken, SONRA Makine A'ya geri almak için "Liman N" bir yanıt bekleyebilirsiniz

Doğru NAT UDP davranışı için geçerli referans:
RFC 4787 / BCP 127: Ağ Adresi Çevirisi (NAT) Tek Noktaya Yayın UDP için Davranış Gereksinimleri


3

Kapat, ancak Makine B'nin gerçekte aldığı kaynak adrese ve bağlantı noktası numarasına bakması gerekir, bu da N'den farklı olabilir.

Makine A'daki NAT, Makine A'nın gönderdiği N numaralı bağlantı noktasını kullanamayabilir. (Aynı NAT'ın arkasındaki C makinesinin N bağlantı noktasını da gönderdiğini düşünün: ikisi de kullanamazlar.) B Makinesi farklı bir kaynak bağlantı noktası görebilir, M. Ama eğer NAT yaparsa, geri gönderilen trafiği kabul etmelidir. bağlantı noktası M'ye gidin ve otomatik olarak Makine B'de N'ye eşleyin.

Diğer bir deyişle, Makine B, aldığı pakette verilen kaynak adrese ve kaynak bağlantı noktasına geri gönderdiği sürece, geri dönüş paketinin orijinal kaynağa geri dönüş yolunu bulmasını bekleyebilirsiniz. Bu, otomatik NAT kuralları birkaç dakika sonra zaman aşımına uğradığından, iade paketinin kısa bir süre içinde gönderildiğini varsayar.


-1

Bunu beklemezdim.

NAT'ların arkasında IP'leri çoğaltabilirsiniz, bu yüzden hangisine iletileceğini seçmeniz gerekir. NAT dışında yalnızca yönlendirici IP'si görünür ve dahili NAT IP'leri görünmez.

UDP bağlantı oluşturmaz, sadece ağ üzerinden seyahat eden bir datagramdır.

Bağlantı noktası gönderme ile bağlantı noktası numarası arasında da bir fark vardır.


UDP'nin "bağlantı oluşturmadığı" doğrudur, ancak kaynak ve hedef bağlantı noktaları bir araya
getirildiğinde
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.