LocalSend支持四种端口修改方式:一、编辑config.json文件持久化设置;二、命令行参数--port=xxx临时指定;三、系统级端口转发(如netsh或iptables);四、环境变量LOCALSEND_PORT用于容器部署。

如果您在使用LocalSend时需要适配特定网络环境或规避端口冲突,系统默认的53317端口可能无法满足需求。以下是修改LocalSend网络端口号的多种可行方法:
一、通过配置文件手动修改端口
LocalSend支持通过编辑本地配置文件来持久化更改监听端口,该方式适用于所有桌面平台(Windows/macOS/Linux),且重启后设置依然生效。
1、关闭正在运行的LocalSend程序,确保后台进程已完全退出。
2、定位配置文件路径:Windows系统为 %APPDATA%\LocalSend\config.json;macOS系统为 ~/Library/Application Support/LocalSend/config.json;Linux系统为 ~/.config/LocalSend/config.json。
3、用文本编辑器(如记事本、VS Code)打开config.json文件。
4、查找是否存在"port"字段;若不存在,则在根对象内添加一行:"port": 53318(将53318替换为您期望的可用端口号,范围建议为1024–65535)。
5、保存文件并重新启动LocalSend,新端口将在日志和设备发现广播中生效。
二、通过命令行参数临时指定端口
此方法不修改配置文件,仅对当前启动实例生效,适合测试或脚本化部署场景,避免配置污染。
1、在Windows上,按住Shift键右键点击LocalSend安装目录空白处,选择“在此处打开 PowerShell 窗口”。
2、输入以下命令并回车:.\LocalSend.exe --port=53319(注意:.exe后需加空格及两个短横线)。
3、在macOS或Linux终端中,进入LocalSend可执行文件所在目录,执行:./LocalSend --port=53319。
4、确认应用启动后,在界面右下角状态栏或开发者控制台中验证监听端口是否已切换至指定值。
三、通过防火墙规则与端口绑定协同配置
当LocalSend运行于受限网络(如企业内网、Docker容器或WSL2环境)时,仅修改应用端口不足以确保外部可达,还需同步配置系统级端口绑定与入站规则。
1、在Windows中以管理员身份运行PowerShell,执行:netsh interface portproxy add v4tov4 listenport=53320 listenaddress=0.0.0.0 connectport=53317 connectaddress=127.0.0.1(将53320设为对外暴露端口,53317为LocalSend实际监听端口)。
2、随后添加对应防火墙规则:netsh advfirewall firewall add rule name="LocalSend-Proxy" dir=in action=allow protocol=TCP localport=53320。
3、在Linux系统中,若使用iptables,运行:sudo iptables -t nat -A PREROUTING -p tcp --dport 53320 -j REDIRECT --to-port 53317。
4、验证端口转发效果:在另一台设备上使用telnet [本机IP] 53320或curl -v http://[本机IP]:53320/api/devices检查连接性。
四、通过环境变量覆盖默认端口(适用于容器化部署)
在Docker或Kubernetes等容器环境中,可通过注入环境变量实现端口配置解耦,无需挂载或修改镜像内配置文件。
1、创建docker run命令时添加参数:-e LOCALSEND_PORT=53321。
2、若使用docker-compose.yml,于services.local-send.environment下添加:LOCALSEND_PORT: "53321"。
3、确保所选端口已在容器运行时通过-p 53321:53321映射到宿主机。
4、启动容器后,检查容器日志输出中是否包含"Listening on port 53321"字样以确认生效。


















