我正在尝试用python在一些计算机之间建立网络,这样我就可以让另一台计算机将信息发送到我的IP地址和设置的端口上。然后我的计算机可以通过监听该端口来接收,而不知道该信息来自哪个IP。
(我不知道这是否可能,但如果有任何帮助,那就太棒了)
resv_conection = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
resv_conection.connect(IP, PORT) # I don't want it to listen to the a specific IP, just any on that port.
我正在
听起来像是个愚蠢的问题,但只是想确定一下。每个串行连接都需要有自己的IP地址吗?
Router 1:
Serial 0/0/0 IP address 172.10.80.193/30
Serial 0/1/0 IP address 172.10.80.197/30
Router 2:
Serial 0/0/0 IP address 172.10.80.194/30
Router 3:
Serial 0/1/0 IP address 172.10.80.198/30
我在想,如果你只知道服务器在同一个网络上运行,你会怎么连接到服务器应用程序呢?典型的套接字连接需要一个IP地址才能连接,但是如果它是未知的呢?有没有其他方式可以不使用IP连接,或者以某种方式确定服务器应用程序的IP?
我之所以问这个问题,是因为在我看来,必须将服务器IP硬编码到客户端应用程序中,或者让用户在运行时手动输入服务器IP,似乎是不切实际的吗?当您在一个由DHCP服务器自动分配IP的网络上时,您将永远不知道服务器应用程序正在运行的IP是什么,除非您给机器一个静态IP,这是我想要避免的。
我希望我的询问足够清楚。
var socket = new Socket(AddressFamily
我在Ubuntu 20.04.3 LTS下。当我连接到ProtonVPN时,我看到了这个
$ dig +short myip.opendns.com @resolver1.opendns.com
45.87.214.117
$ ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
...
2: enp0s25: mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
...
3: wlp2s0: mtu 1500 qd
我在两个主机之间有一个隧道,通过L2TPv3进行传输。隧道的每一端都与其他接口一样,都被挤到了一座桥上。远程桥有一个DHCP服务器,而本地桥有一个DHCP客户端。为了测试这一点,我在主机上创建了一个veth对。我将一对中的一半从桥接器中分离出来,并将另一半放入新的网络命名空间中。然后,在该命名空间中,我在对的另一半上启动一个DHCP客户机。如下所示:
ip netns add test
ip link add test1 type veth peer test2
ip link set test2 netns test up
ip link set test1 master tunnel_br