Как привязать IP-адрес к telnetlib в Python

1

Приведенный ниже код связывает IP-адрес с urllib, urllib2 и т.д.

import socket
true_socket = socket.socket
def bound_socket(*a, **k):
    sock = true_socket(*a, **k)
    sock.bind((sourceIP, 0))
    return sock
socket.socket = bound_socket

Может ли он также связать ip-адрес с telnetlib?

Теги:
ip-address
telnetlib

1 ответ

2
Лучший ответ

telnetlib по крайней мере, в последних выпусках Python используется socket.create_connection (см. источники telnetlib здесь), но это также должно быть monkeypatch (источники здесь - вы увидите, что использует голый идентификатор socket, но именно в том модуле, в котором вы обезьяны). Конечно, monkeypatching всегда чрезвычайно хрупок (самая маленькая оптимизация в какой-то будущей версии, поднимающая глобальный поиск socket в create_connection, и вы тосты...;-), так что, возможно, вам захочется перейти в monkeypath create_connection непосредственно как скромно более сильный подход.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню