我ap0
配置了一个接口,该接口systemd-networkd
旨在由应用程序动态启用/禁用。我希望这个应用程序ap0
也能绑定到与之关联的 IP 地址。但是,如果应用程序禁用该ap0
接口,则其绑定自然会失败。
ap0
有没有一种方法可以让我的应用程序保持与其地址的绑定,并且该地址在启动和关闭时保持可绑定,但在ap0
启动时可用?我一直在尝试网络绑定和桥接,但效果并不理想。
我ap0
配置了一个接口,该接口systemd-networkd
旨在由应用程序动态启用/禁用。我希望这个应用程序ap0
也能绑定到与之关联的 IP 地址。但是,如果应用程序禁用该ap0
接口,则其绑定自然会失败。
ap0
有没有一种方法可以让我的应用程序保持与其地址的绑定,并且该地址在启动和关闭时保持可绑定,但在ap0
启动时可用?我一直在尝试网络绑定和桥接,但效果并不理想。
如果应用程序支持它(或者如果它是您的应用程序,或者您愿意修补它),Linux 2.4+(和 FreeBSD)中有一个
setsockopt
标志IP_FREEBIND
,允许将套接字绑定到(当前)不存在的地址。这完全符合您的要求:当接口启动时,您的应用程序将在该地址上获得连接,但当接口关闭时,不会出现任何错误情况。例如,Apache 的最新版本通过
freebind
向Listen
指令添加选项来支持此功能。回答我自己的问题,这确实有效,但我很想了解任何其他方法:
br0
它已经192.168.3.1
配置了 DHCPdu0
并将其与br0
桥接器关联。ap0
接口并将其与同一个br0
桥关联。我现在可以对界面做我想做的事
ap0
,而且它不会影响与之绑定的任何内容192.168.3.1
。