You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为运行在同一台机器上的客户端与服务端设置不同的IP?

Socket 客户端与服务端配置不同本地IP的方案

本地环回地址段为127.0.0.0/8,该网段所有IP默认指向本机,无需额外配置物理网卡即可直接使用,你可以利用该特性快速实现两端IP差异化,也可以通过配置虚拟网卡使用非环回IP。


1. 环回网段快速配置方案(无需修改系统配置,Linux/macOS 直接可用)

服务端配置

绑定127.0.0.0/8网段下除127.0.0.1外的任意IP即可,示例代码:

import socket

# 自定义服务端IP,可选127.0.0.2~127.255.255.254之间任意值
SERVER_IP = "127.0.0.2"
SERVER_PORT = 8080

server_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_sock.bind((SERVER_IP, SERVER_PORT))
server_sock.listen(5)

Windows 系统如果绑定失败,用管理员身份执行命令route add 127.0.0.2 mask 255.255.255.255 127.0.0.1即可开启对应IP的路由

客户端配置

连接服务端前先绑定同网段下另一个IP即可,示例代码:

import socket

# 服务端绑定的IP
SERVER_IP = "127.0.0.2"
SERVER_PORT = 8080
# 自定义客户端IP,和服务端IP区分开即可
CLIENT_IP = "127.0.0.3"

client_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 端口传0代表让系统自动分配可用端口
client_sock.bind((CLIENT_IP, 0))
client_sock.connect((SERVER_IP, SERVER_PORT))

效果验证

服务端接受连接时打印的客户端地址将显示为你配置的独立IP:

conn, client_addr = server_sock.accept()
print(client_addr)
# 输出示例:('127.0.0.3', 54321)

2. 非环回IP配置方案(适用于需要跨设备访问的场景)

  • 给本机添加虚拟网卡,为每张虚拟网卡分配不同的静态内网IP,例如192.168.1.10、192.168.1.11
  • 服务端绑定192.168.1.10,客户端绑定192.168.1.11,用法和上述环回IP示例完全一致

内容的提问来源于stack exchange,提问作者Anonymous

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 00:54:07