Как послушать на нескольких IP-адресах?

Я недавно видел представление [приблизительно 110] GreenFoot (основанная на Java среда обучения для детей). Это выглядело потрясающим. Если бы у меня были бы дети, я дал бы ему попытку

Ссылка на представление

, Это - очень игривая среда, где Вы могли запустить с очень простых методов. Дети изучают взгляды объектно-ориентированным способом (Вы не можете инстанцировать животного, но можно инстанцировать кошки). И чем лучше они добираются, тем больше Java можно раскрыть для/с их.

8
задан Erik Funkenbusch 22 November 2009 в 03:15
поделиться

3 ответа

Вы не можете привязать один сокет к нескольким конечным точкам. SocketException (ошибка недопустимого аргумента) возникает при втором вызове Bind () для данного сокета.

Как говорили другие, вы можете использовать IPAddress.Any для прослушивания адресов IPv4 на локальном компьютере. Однако, если вы хотите прослушивать только подмножество доступных IP-адресов, вам придется создать отдельные сокеты.

17
ответ дан 5 December 2019 в 05:26
поделиться

Да, IPAddress.Any будет прослушивать все интерфейсы.

http://msdn.microsoft.com/en-us/library/system.net.ipaddress.any.aspx

2
ответ дан 5 December 2019 в 05:26
поделиться

Технически вашему серверу никогда не назначены IP-адреса.

Вместо этого отдельным сетевым интерфейсам могут быть назначены IP-адреса. Обычно каждая сетевая карта получает один IP-адрес, но это самый распространенный случай.

Если вы хотите контролировать, какие интерфейсы прослушивают входящие соединения на выбранном вами порту, вам нужно создать отдельный сокет для каждого из них.

4
ответ дан 5 December 2019 в 05:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: