通信基础 - IP地址
一、服务器的IP地址
服务器端的核心动作是“绑定”和“监听。它的讲究在于“确定自己的身份”。
1,0.0.0.0 (万能监听):代表“本机所有可用的网络接口”。这是最常用、最推荐的写法。无论客户端是用 127.0.0.1 连你,还是用局域网 IP 192.168.x.x 连你,甚至通过公网 IP 连你,服务器都能响应。
2,127.0.0.1 (仅本机回环):代表“只接受本机发起的连接”。外面局域网的电脑绝对连不进来。适用于只给本地应用提供服务的场景(如本地数据库 MySQL),安全系数最高。
3,具体的局域网/公网 IP (如 192.168.1.100):代表“只在这个特定的网卡上接待”。如果你的电脑插了网线(IP A)又连了 WiFi(IP B),你绑定 A,那么通过 B 进来的连接会被拒绝。(创建服务器填了电脑上根本不存在的 IP 会报错)
二、客户端的IP地址
客户端的核心动作是“连接”。它的讲究在于“找到目标”。
客户端填写的 IP,必须是服务器端能够被识别到的地址。这取决于客户端和服务器所处的位置。
1,服务器在本机:填 127.0.0.1 或 localhost
2,服务器在同一个局域网:填服务器的局域网 IP(如 192.168.1.100)
3,服务器在公网:填服务器的公网 IP
误区:如果服务器代码绑定的是 0.0.0.0,客户端绝不能填 0.0.0.0 去连接!0.0.0.0 只有在绑定/监听时有意义,在连接时毫无意义。客户端必须填 127.0.0.1 或服务器真实的局域网 IP
三、客户端的端口
客户端发起连接时,操作系统也会为客户端分配一个本地 IP 和临时端口。
1,本地 IP:由操作系统的路由表自动决定
2,临时端口:客户端通常不需要(也不应该)指定端口。操作系统会从动态端口池(49152-65535)中随机挑一个没人用的端口,所以服务器的端口最好在(1024-49151)之间,以避免冲突。
四,典型场景
场景 1:单机自测(服务端和客户端都在自己电脑上)
- 服务器:IP 填 0.0.0.0 或 127.0.0.1,端口填 9000
- 客户端:IP 填 127.0.0.1,端口填 9000
场景 2:局域网联调(服务端在台式机,客户端在笔记本,连同一个路由器或WiFi)
- 服务器:IP 填 0.0.0.0,端口填 9000 (确保台式机防火墙放行了 9000)
- 客户端:IP 填台式机的局域网 IP(如 192.168.1.50),端口填 9000
场景 3:公网联调(服务端在云服务器如阿里云上)
- 服务器:IP 填 0.0.0.0,端口填 9000 (在阿里云控制台的“安全组”里放行 9000 端口)
- 客户端:IP 填阿里云的公网 IP(如 121.34.56.78),端口填 9000

浙公网安备 33010602011771号