Как использовать сервер с несколькими IP-адресами? - PullRequest
0 голосов
/ 15 марта 2011

У меня есть серверный процесс, который прослушивает определенный порт (скажем, 60000), и у моего linux-ящика есть два ip-адреса (скажем, ip1 и ip2).

Можно ли как-то запустить два процесса в моем linux-боксе, чтобы Process1 мог получать все пакеты, отправленные на ip1: 60000, а Process2 мог получать все пакеты, отправляемые на ip2: 60000.

Спасибо

1 Ответ

1 голос
/ 15 марта 2011

Да. Вы захотите использовать системный вызов bind в сокете прослушивания, который указывает прослушиваемый IP-адрес, вместо (более обычного) INADDR_ANY. [Ссылка 1]

Затем используйте один IP-адрес в одном процессе и один IP-адрес во втором процессе. Оба смогут использовать один и тот же порт прослушивания.


Ссылки:

  1. http://www.scottklement.com/rpg/socktut/bindapi.html
...