在运行127.0.0.1服务器的同一台计算机上欺骗IP地址

时间:2020-08-09 17:02:45

标签: python

我正在托管一个服务器,该服务器在IP地址为“ 127.0.0.1”的本地主机上侦听UDP数据包。在同一台机器上,我如何能够将欺骗性IP地址“ 1.2.3.4”而不是“ 127.0.0.1”的数据包发送到该服务器?

import socket

UDP_IP = "127.0.0.1"
UDP_PORT = 5005

if __name__ == "__main__":
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    sock.bind((UDP_IP, UDP_PORT))
   
    sizes = {}
    for size in range(512):
    sizes[size] = 0

    while True:
        data, addr = sock.recvfrom(8092)
        if addr[0] != "1.2.3.4":
            print("Acess denied")
            #print(addr[0])
            #print(len(data))
            continue
        else:
            print("hello")
        
    print ("length:", len(data))
    sizes[len(data)] += 1

1 个答案:

答案 0 :(得分:0)

当前,这是我用来发送UDP数据包的代码。

import socket
import ipaddress

UDP_IP = "127.0.0.1"
UDP_PORT = 5005

if __name__ == "__main__":
    ipaddress.ip_address(unicode('1.2.3.4', "utf-8"))
    Message = "H"
    clientSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    clientSock.sendto(Message, (UDP_IP, UDP_PORT))