Linux:在重新启动之前如何validation我的networkingconfiguration

我正在尝试为服务器上的虚拟机构buildnetworking桥接器。

所以我添加了一个新文件,并在/etc/sysconfig/network-scripts目录中更改了另一个文件。

然后我使用以下命令/etc/init.d/network restart了networking: /etc/init.d/network restart

之后,服务器不起来了。 我联系了托pipe服务提供商的支持。

我需要一种方法在networking重新启动之前validation我的新configuration。 我需要确保它会重新启动,就像apache的/etc/init.d/httpd configtest

实质上,您将需要创build一个脚本语言/shellselect询问您的服务器当前加载的networking信息,比较它对接口,路由表,configuration文件和networking选项的任何其他sockets的任何更改,然后对差异运行逻辑以确定是否存在违反对任何或所有networking的访问的条件。

由于每个联网设备都有大量不同的界面,路由,协议,物理和虚拟基础设施,这对于您的场景来说是独一无二的,所以创build一个configurationtesting并不像使用Apache那样容易。 (我使用“容易”这个词来描述阿帕奇,我的丝状乳头对我的颊部区域印象很深刻)

简而言之,你会在自己创build一个脚本,检查你最关心的情况。 如果您对服务器上的networking资源非常熟悉并能够制作这种脚本,则可能不需要这种脚本。 好吧,这不完全正确,但听起来不错。

TL; DR

你用perl怎么样?

我认为没有解决scheme。 Apache只testingconfiguration文件的语法。 你也可以创build一个脚本来testing/etc/sysconfig/network-scripts中的文件的语法,但问题是这个问题有很多:

  • 错误的IP地址(或重复的IP地址)使您的机器无法访问
  • 路由表:我自己也得到这个问题,当重新启动networking,服务器丢失路由表,我不能到达服务器,直到我使用另一台服务器从同一个networking访问此服务器添加静态路由。