Socket Communication C# - IP адрес

Имам приложение за сокет, което мога да използвам в локалната мрежа, у дома. Мога да ги накарам да комуникират например от 192.168.x.x до 192.168.y.y ip адреси.

Какво трябва да направя, ако искам да използвам приложението през интернет, от отдалечена машина, а не локално. Например кои ip адреси трябва да използвам, ако мой приятел, който живее в друга държава, иска достъп до приложението ми.


person Ahmet Altun    schedule 04.04.2010    source източник


Отговори (4)


От страна на сървъра най-лесният начин е да се свържете с всички налични адреси, като използвате IPAddress.Any като адрес. Ще трябва да дадете на клиента публичния си интернет адрес, с който да се свърже. Ако сте NAT, това може да включва преглед на вашия рутер за адреса (или използване на http://www.whatismyip.com/) и го конфигурирате да насочва трафика към вашия компютър.

person Matti Virkkunen    schedule 04.04.2010

Трябва да настроите вашия рутер да препраща порта, на който искате да комуникирате. След като го направите, дайте на приятеля си своя публичен IP адрес.

Например, можете да конфигурирате правилата на вашия рутер, за да насочвате всички заявки за порт 80 към вашата машина 192.168.x.x, така че когато влезе заявка за порт 80, тя автоматично да бъде изпратена до конкретен адрес във вашата подмрежа.

person George Johnston    schedule 04.04.2010

Вашият изходящ IP адрес. Използвайте този сайт, за да го видите: http://www.whatismyip.com/

И по причина порт препраща вашия рутер.

person Fogh    schedule 04.04.2010

Ще трябва да използвате IP адреса, предоставен от вашия ISP (доставчик на интернет услуги). Обикновено тези IP адреси не са статични, така че трябва да предоставите някакъв начин за преобразуване на вашия динамичен IP адрес в статично име (доставчиците на dyndns правят това обикновено).

Освен това трябва да конфигурирате вашия рутер да препраща входящия трафик на порт xxx към вашата локална машина (това обикновено не е вашият рутер, освен когато използвате модем). Това се нарича препращане на порт.

person AxelEckenberger    schedule 04.04.2010