Jak się obchodzi NAT?

maszynaz
  • Rejestracja: dni
  • Ostatnio: dni
0

Jak się obchodzi programowo NAT (Network Address Translation)? Zainstalowałem sobie virtualną maszynę z Windowsem XP. VM jest za NAT-em. Z VM mogę pingować na HOST-a, ale z HOST-a na VM już nie bo jest za NAT-em. Jak programowe obchodzenie NAT-u wygląda w praktyce?

kult
  • Rejestracja: dni
  • Ostatnio: dni
0

możesz na routerze przekierować port na twój adres IP lub tunelować połączenie, ale wtedy musisz posiadać zewnętrzny serwer (komputer z publicznym adresem IP) np programem putty.

kult
  • Rejestracja: dni
  • Ostatnio: dni
0

Ale jak programowo? Chcesz aby cudownie porty twojego komputera za natem były widziane z zewnątrz? Tak się nie da. Jeśli nie chcesz tunelu to musisz postawić serwer, który będzie pośrednikiem między klientami. Programowo nazywa się to aplikacja klient - serwer.

M1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 175
Sarrus
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2512
0
maszynaz napisał(a)

a programowo jak?

Chcesz poznać wewnętrzny adres ip hosta znajdującego się za routerem? Ty wiesz o czym mówisz czy mówimy o czym innym? Przecież router tłumaczy adres (Address Translation) na zewnętrzny i tylko ten adres znasz (pomijam tu tunelowanie i przekierowanie portów).

maszynaz
  • Rejestracja: dni
  • Ostatnio: dni
0

Bo w jedną stronę da się komunikować, więc można przesłać jakieś dane potrzebne do komunikacji w drugą stronę. Da się tak?
Albo tak, że jak VM wysyła wiadomość po UDP do Hosta to host automatycznie po odebraniu wiadomości (Receive) odsyła wiadomość na tym samym sockecie.

Edit:
I tak właśnie działa bo właśnie sprawdziłem.

abrakadaber
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6610
1

no przecież jak już nawiążesz połączenie to ono jest nawiązane. Jak jeden komp ma publiczne IP to po prostu ten za NATem musi inicjować połączenie

M7
  • Rejestracja: dni
  • Ostatnio: dni
0

To jest opcja w VM. Zmień w ustawienie sieci w VM z NAT na Bridged.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.