为什么ntpd需要监听这么多地址?
例如,Debian机器:
$netstat Proto Local Address Foreign Address Program name udp 0.0.0.0:123 0.0.0.0:* ntpd udp 127.0.0.1:123 0.0.0.0:* ntpd udp [LAN]:123 0.0.0.0:* ntpd udp [IPv4]:123 0.0.0.0:* ntpd udp6 :::123 :::* ntpd udp6 ::1:123 :::* ntpd udp6 [link-local] :::* ntpd udp6 [IPv6] :::* ntpd
此(编辑)netstat列表显示nptd侦听IPv4和IPv6的广播,本地,LAN和全局地址.
为什么ntpd如此滥交?
解决方法
第一个端口123低于1024,因此被视为特权端口,只有root可以绑定到该端口. Ntp通常设置为在启动后删除权限.根据我从邮件列表中理解的内容,以及删除权限后的文章无法打开套接字以从123的正确源端口回复,因此ntp会在删除权限之前为每个分配的地址打开套接字.
从我所看到的,ntp的一些认证机制基本上要求源和目标端口为123,而不是其他.
事情并不完全清楚.请参阅有关wildcard address 0.0.0.0的部分,由于某种原因它由ntpd打开,但是除了可能在某些特殊情况下可能永远不会使用的评论中,开发人员并不完全确定,但是,它们是不想删除套接字,以防万一他们破坏了东西.
Note that normally ntpd should not be accepting packets on the wildcard addresses since there are a number of problems if you do so including sending return packets on a different address from the sender’s requested address.
DannyMayer – 27 Apr 2009
我认为你的问题的主要答案在上面的评论中.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。