我一直在跟踪一个简单的UDP服务器/客户端教程发现,并且我有一个关于客户机连接到服务器的哪个端口的快速问题。
从查看代码来看,服务器和客户端显然是通过端口8888连接的:
Client.cpp
#define SERVER "127.0.0.1" //ip address of udp server
#define BUFLEN 512 //Max length of buffer
#define PORT 8888 //The port on which to listen for incoming data
Server.cpp
#define BUFLEN 512
我运行的是UDP服务器和客户端(python)。在同一本地网络中时,客户端能够与服务器通信。但是,当服务器IP地址设置为路由器的IP地址时(路由器具有转发到服务器的UDP端口),客户端根本无法与服务器通信。我想知道是否有人可以指出为什么这在本地网络中(在不同的机器上)工作,但我不能让客户端使用客户端和服务器都连接到的路由器的外部IP地址连接到服务器。
客户端的代码
import socket
import sys
HOST, PORT = "<IP address of router which is port forwarded to server>", 500