Github 地址: https://github.com/yongboy/bindp
基于 LD_PRELOAD
机制,可以作用于:
nc
,curl
,wget
,nginx
等特性如下:
SO_REUSEADDR
特性支持SO_REUSEPORT
特性支持IP_TRANSPARENT
特性支持下载编译:
git clone https://github.com/yongboy/bindp.git
cd bindp
make
使用方式:
假设本地多个可用 IP 地址包含 10.10.10.10 ,并且假设端口 49999 没被占用,那么我们可以在作为客户端访问远程服务器时进行制定 IP 地址和端口:
REUSE_PORT=1 BIND_ADDR="10.10.10.10" BIND_PORT=49999 LD_PRELOAD=/the_path/libindp.so nc 10.10.10.11 80
假设 Nginx 配置监听 80 端口,不想修改配置文件的话而使之监听 9090 端口,我们可以这样做:
BIND_PORT=9090 LD_PRELOAD=/your_path/libindp.so /usr/sbin/nginx -c /etc/nginx/nginx.conf
更多用法,请直接参考文档: https://github.com/yongboy/bindp
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.