我需要允许外部客户端更改运行程序(C++)的Linux机器的IP。我已经知道如何列出分配给它们的所有本地接口和当前的IP。我也知道如何通过编程改变I。
我需要知道的是如何使此更改永久化,因此,如果机器重新启动,它将保持相同的网络配置。做这件事最好的方法是什么?手动解析/etc/网络/接口?调用linux命令?
编辑:我在使用Debian。
谢谢!
发布于 2012-10-10 08:47:49
是的,操作/etc/network/interfaces是实现这一目标的方法(只需存储备份,以防出错)。
另外,如果接口由网络管理器管理(服务器很少使用这种情况,但发生在桌面上),我认为您可以通过dbus调用对其进行操作。
您应该提到分发,顺便说一下,而不是没有提到文件的语言- if--这是不可能猜测的;-)
发布于 2012-10-10 09:23:33
要使更改永久化,您必须用/etc/network/interfaces和可能的DNS服务器(resolv.conf)编写网络配置。
http://wiki.debian.org/NetworkConfiguration
如果您不想每次解析接口,可以将IP和Network保存在一个配置文件中以恢复它。然后,您只能重写“/etc/网络/接口”。
更改网络接口配置后,您必须重新启动网络堆栈(特定于发行版)。
用auto重新启动接口:
$ /etc/init.d/networking restart
重新启动其他接口:
$ ifup [iface]
发布于 2012-10-10 08:47:54
您可以调用ifconfig并在脚本中路由commands或更好,您可以根据您的Linux发行版编辑所提到的文件。
https://stackoverflow.com/questions/12815403
复制相似问题