0

我使用手机上的 4G 连接共享。

mode = 0 :当我将手机用作带有应用程序 Pydroid 3 的服务器时(来自 playstore,您可以制作和运行 Python 文件),与 Settings / about_phone / IMEI_and_IP 中的地址绑定:192.0.0.7,我的计算机作为客户端发送到同一个地址,我的手机可以很好地接收到数据,并且可以使用 s.recvfrom(1024) 返回的地址将其发回:192.168.199.202

mode = 1 :但是当我将我的计算机用作服务器时,将它与 ipconfig 中的地址绑定,即 192.168.199.202,并将我的手机作为客户端,发送到相同的地址(就像他之前所做的那样),计算机没有'什么都看不到...... Wireshark 可以看到包裹出去了。

什么可能是错的?

感谢您的时间。

电话.py:

import socket
import time

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

port = 65432

mode = 0

if mode == 0:

    addr = "192.0.0.7"

    s.bind((addr, port))

    d, a = s.recvfrom(1024)
    print(d)
    print(a) #192.168.199.202

    s.sendto(d, a)

    time.sleep(5)

    s.sendto(d, a)

elif mode == 1:
    addr = "192.168.199.202"
    
    s.sendto(b'hola', (addr, port))

计算机.py

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

port = 65432

mode = 0

if mode == 0:

    addr = "192.0.0.7"
    port = 65432
    s.sendto(b'hola', (addr, port))

    d, a = s.recvfrom(1024)

    print(d)
    print(a) #192.0.0.7

    d, a = s.recvfrom(1024)

    print(d)
    print(a)

elif mode == 1:

    addr = "192.168.199.202"
    s.bind((addr, port))
    print("waiting for reception....")

    data = s.recvfrom(1024)

    print(data)
4

0 回答 0