ip_nonlocal_bind=1 如何破坏应用程序?
How can ip_nonlocal_bind=1 break applications?
我有两个 Linux 虚拟机。他们都在同一个 IP 上启动 sshd
服务。当一台机器宕机时,您可以使用相同的 IP 登录另一台 VM。但是,另一个 VM 不会侦听该 IP,因为它尚不存在。
我必须手动重新启动 sshd
服务。但是,如果 sshd
未启动,我将无法登录 VM。我通过将 ip_nonlocal_bind
设置为 1
.
找到了解决方案
我在 kernel.org 中搜索了 ip_nonlocal_bind
的描述:
ip_nonlocal_bind - BOOLEAN
If set, allows processes to bind() to non-local IPv6 addresses,
which can be quite useful - but may break some applications.
Default: 0
最后一行说 but may break some applications
,我担心这会破坏我在虚拟机上 运行 的应用程序。
我的VM主要充当路由器。
最后,我想知道:ip_nonlocal_bind
如何破解应用程序?
内核文档说 ip_nonlocal_bind
可能会破坏 某些应用程序,因为顾名思义,它允许 bind()
在非本地地址上机器。如果启用此设置,并且应用程序做出(错误的)假设入站地址是机器本地的,这可能导致它崩溃或在任何情况下错误地处理连接。
文档说这可能会破坏某些应用程序,因为在引入设置之前(如果我没记错的话,在内核 v4.3 中)应用程序可以安全地假定绑定地址是本地的。
我不会担心你的情况,因为正如你所说,你的机器只是充当路由器,所以基本上整个路由工作都是由内核本身完成的。
我有两个 Linux 虚拟机。他们都在同一个 IP 上启动 sshd
服务。当一台机器宕机时,您可以使用相同的 IP 登录另一台 VM。但是,另一个 VM 不会侦听该 IP,因为它尚不存在。
我必须手动重新启动 sshd
服务。但是,如果 sshd
未启动,我将无法登录 VM。我通过将 ip_nonlocal_bind
设置为 1
.
我在 kernel.org 中搜索了 ip_nonlocal_bind
的描述:
ip_nonlocal_bind - BOOLEAN
If set, allows processes to bind() to non-local IPv6 addresses,
which can be quite useful - but may break some applications.
Default: 0
最后一行说 but may break some applications
,我担心这会破坏我在虚拟机上 运行 的应用程序。
我的VM主要充当路由器。
最后,我想知道:ip_nonlocal_bind
如何破解应用程序?
内核文档说 ip_nonlocal_bind
可能会破坏 某些应用程序,因为顾名思义,它允许 bind()
在非本地地址上机器。如果启用此设置,并且应用程序做出(错误的)假设入站地址是机器本地的,这可能导致它崩溃或在任何情况下错误地处理连接。
文档说这可能会破坏某些应用程序,因为在引入设置之前(如果我没记错的话,在内核 v4.3 中)应用程序可以安全地假定绑定地址是本地的。
我不会担心你的情况,因为正如你所说,你的机器只是充当路由器,所以基本上整个路由工作都是由内核本身完成的。