强制NIS使用TCP

是否可以强制NIS连接使用TCP而不是UDP? 我搜查了ypserv (仅强制侦听TCP)和ypbind (仅通过TCP连接)的文档,但没有发现任何内容(只有指定侦听端口的选项)。 恐怕有人会回答“是的,如果你从源头上编译…”

而且ypserv监听这两个协议,所以为什么当UDP失败时ypbind不会尝试TCP呢?

更新

我尝试了Phil的解决scheme,但事实certificate,ypbind首先在UDP端口111上联系portmap。如果没有得到UDP响应,它就放弃了。

我只能想出一个解决scheme,而且快速谷歌显示相同 。 在特定的端口上运行ypserv,然后在服务器上configurationiptables以阻止传入的udp连接,例如,如果您在端口1337上运行ybserv:

 # iptables -I INPUT -p udp --dport 1337 -j REJECT 

尽pipe我不清楚ybbind使用什么机制来确定是使用UDP还是TCP。 使用这样的防火墙规则可能只会导致ypbind尝试UDP连接,被阻止并放弃。