Articles of sockets de

Enviar / recibir mensajes de WebSocket a través de Python socket / WebSocket Client

Escribí un simple cliente de WebSocket. Usé el código que encontré en SO, aquí: ¿Cómo puedo enviar y recibir mensajes de WebSocket en el lado del servidor? . Estoy usando Python 2.7 y mi servidor es echo.websocket.org en el puerto 80 TCP. Básicamente, creo que tengo un problema con la recepción de mensajes. (¿O tal […]

Detector de paquetes en Python

Quiero hacer un sniffer de paquetes en Python 3.5 que capture UDP, TCP e ICMP. Este es un breve ejemplo de ello: import socket import struct # the public network interface HOST = socket.gethostbyname(socket.gethostname()) # create a raw socket and bind it to the public interface s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_IP) s.bind((HOST,0)) # Include IP […]

Obtenga la máscara IP de la dirección IP y la longitud de la máscara en Python

Dada una dirección IP en notación cuádruple punteada, por ejemplo: 192.192.45.1 Y una longitud de máscara, por ejemplo, 8, 16, 24 normalmente, pero podría ser cualquier cosa, por ejemplo, 17. ¿Alguien puede proporcionar el código en python para calcular la máscara de subred? Preferiblemente, podría obtener el resultado como un entero de 32 bits para […]

¿Cómo detecto una desconexión de socket? / ¿Cómo llamo a socket.recv con un timeout?

Estoy utilizando gevent parcheado socket para conectarme a un servidor de transmisión y estoy usando una conexión ADSL. No controlo el servidor, pero en mis pruebas, si detengo el servidor, puedo detectar la desconexión simplemente verificando si el resultado de recv es una cadena vacía, pero si desactivo mi versión de módem adsl nunca sale. […]

¿Zócalo no bloqueante en Python?

¿Soy yo o no puedo encontrar un buen tutorial sobre sockets no bloqueantes en python? No estoy seguro de cómo trabajar exactamente el .recv y el .send en él. De acuerdo con los documentos de Python, (como yo lo entiendo) los datos recv o send pueden ser solo datos parciales. Entonces, ¿eso significa que tengo […]

Obtener dirección de red y máscara de red en Python

En mi script Python necesito recuperar tanto la dirección IP de la máquina en la que se ejecuta el script como su dirección de red y sus bytes de red. En cuanto a la dirección IP, encontré la solución en el archivo: import socket s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect((“www.google.com”,80)) myAddress = (s.getsockname()[0]) s.close() Pero, ¿cómo […]

python: urllib2 usando una interfaz de red diferente

Tengo el siguiente código: f = urllib2.urlopen(url) data = f.read() f.close() Se está ejecutando en una máquina con dos interfaces de red. Me gustaría especificar qué interfaz quiero que use el código. Específicamente, quiero que use el otro que está utilizando por defecto … pero puedo averiguar cuál es cuál si puedo simplemente seleccionar la […]

Python icmp socket server (no tcp \ udp)

Estoy intentando escribir un servidor de socket en Python que pueda recibir paquetes ICMP. Aquí está mi código: s = socket.socket(socket.AF_INET,socket.SOCK_RAW, socket.IPPROTO_ICMP) host = socket.gethostbyname(socket.gethostname()) s.bind((host,0)) s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1) s.ioctl(socket.SIO_RCVALL, socket.RCVALL_ON) Sin embargo, no sé cómo recibir los paquetes. Intenté utilizar la función de escucha de la lista pero falló. ¿Qué me falta o estoy […]

¿Cómo detener una llamada a python socket.accept ()?

Soy un novato en zócalos de python y estoy realmente preocupado por la obstinación del método socket.accept (). Realmente necesito una forma de finalizar un método socket.accept () o cualquier otra alternativa a socket.accept () que se ejecuta una sola vez. Plzzzz alguien ayuda.

Python socket enviar EOF

Tengo un progtwig simple de transferencia de archivos donde un socket envía datos de archivos y otro socket recibe los datos y los escribe en un archivo. Necesito enviar un acuse de recibo una vez que la transferencia haya finalizado desde el destino al origen Código de destino s.accept() f = s.makefile() f.read(1024) Código para […]