外网 IP 查询服务——这应该是我写过最简单、但又有实际用处的 TCP 服务了。
流程
- 服务启动,监听本地 6666 端口
- 接受连接,返回客户端 IP
- 断开连接
用 Go 语言实现,加上空行还不到 30 行代码,请自行前往 GitHub 获取。
部署
通过 go build
命令编译,在 macOS 上编译 Linux 版本需要指定 GOOS
参数:
GOOS=linux go build main.go
生成的 main
可以直接运行了:
./main
或者更高级点,通过 supervisor
配置成服务,使用 supervisorctl
控制。
使用
用 telnet
连接部署机器的 6666 端口即可,如 migege.com:6666:
telnet migege.com 6666 Trying 120.27.122.8... Connected to migege.com. Escape character is '^]'. 1xx.2xx.2xx.1xxConnection closed by foreign host.
再也不用担心 ns1.dnspod.net 没有响应了。