Contenidos
Servidor en Kotlin
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
import java.net.DatagramPacket import java.net.DatagramSocket import java.net.InetAddress fun main() { val listenIP = "192.168.0.11" // Dirección IP desde la que se recibirán los paquetes val listenPort = 54321 // Puerto de escucha val socket = DatagramSocket(listenPort, InetAddress.getByName(listenIP)) val buffer = ByteArray(1024) while (true) { val packet = DatagramPacket(buffer, buffer.size) socket.receive(packet) val sourceIP = packet.address.hostAddress val sourcePort = packet.port val message = String(packet.data, 0, packet.length) println("Mensaje recibido desde $sourceIP:$sourcePort: $message") } } |
Cliente en Python
1 2 3 4 5 6 7 8 9 10 11 12 |
from scapy.all import * fake_source_ip = "192.168.0.12" # Dirección IP falsa como dirección de origen destination_ip = "192.168.0.11" # Dirección IP del segundo equipo destination_port = 54321 # Puerto de destino message = "Hola desde la dirección IP falsa" # Crear un paquete IP con dirección IP falsa packet = IP(src=fake_source_ip, dst=destination_ip) / UDP(dport=destination_port) / message # Enviar el paquete send(packet, verbose=0) |