Как я могу получить номер порта вновь принятого соединения в Python? - PullRequest
4 голосов
/ 12 ноября 2010

Когда я создаю сокет на сервере и принимаю входящее соединение:

conn, addr = s.accept()

Оба печатают conn.getsockname() и print s.getsockname() распечатывают один и тот же номер порта.

Iдумал, что «conn» должен был представлять НОВЫЙ сокет.Как мне получить номер порта этого нового сокета?

Спасибо!

Ответы [ 2 ]

5 голосов
/ 12 ноября 2010

Локальный порт остается прежним.То, что вы хотите, это порт удаленной стороны.Для этого вы можете использовать getpeername (или второй элемент возвращаемого значения accept).

0 голосов
/ 12 ноября 2010

Это новый сокет, но он имеет тот же локальный порт, что и исходный сокет прослушивания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...