linux如何监听非本地地址

这篇文章将为大家详细讲解有关linux如何监听非本地地址,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

较新版本的linux协议栈提供了绑定非本地地址的功能,bind的使用可以更灵活。该功能默认关闭,如果需要打开,修改proc sys文件:

    # echo 1 > /proc/sys/net/ipv4/ip_nonlocal_bind

内核对应的实现代码:

    inet_bind()
    ...
     if (!net->ipv4.sysctl_ip_nonlocal_bind &&
	    !(inet->freebind || inet->transparent) &&
	    addr->sin_addr.s_addr != htonl(INADDR_ANY) &&
	    chk_addr_ret != RTN_LOCAL &&
	    chk_addr_ret != RTN_MULTICAST &&
	    chk_addr_ret != RTN_BROADCAST)
		goto out;

稍微注意下,这个功能不只是给tcp用的。

关于“linux如何监听非本地地址”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接