为什么默认的eth0接口在CentOS上默认关闭?


43

我已经有点熟悉Debian或Ubuntu等Linux发行版(是的,非常相似),但是我想尝试基于Red Hat的CentOS 6.2。我已经在virtualBox的Windows 7主机上安装了它,并尝试了一点操作。

我遇到了一个小问题,即:默认eth0界面默认为关闭。我将此选项与NAT一起使用(虚拟机位于主机“后”)。即使我调高介面

ifconfig eth0 up它不会立即起作用。我在启动界面后得到了这个:

在CentOS机器上配置网络需要做些什么?CentOS显示了ifconfig的输出。 请注意,eth0已关闭。

PS对不起,截图,但是我不知道如何从VirtualBox中获取文本。


2
eth1屏幕快照上没有任何内容...顺便说一句,尝试在界面上运行DHCP :dhclient eth0
pbm 2012年

@pbm 1)我在说明中更改eth1eth0。2)dhclient eth0工作:)谢谢。如何将其设置为默认值-重新启动后像这样运行?
Patryk 2012年

我不确定,但请查看此博客文章:blog.malaya-digital.org/…–
pbm

Answers:


53

编辑/etc/sysconfig/network-scripts/ifcfg-$IFNAME。将该ONBOOT行的值更改为yes

$IFNAMEeth0在许多EL6盒上使用,但在使用“ 一致网络设备命名”方案的EL7和EL6盒上,可能与其他类似en3p1。使用命令ip link获取网络接口列表,包括当前关闭的网络接口。

在以后的安装中,请多加注意。您忽略了“网络配置”部分中的一个选项,让您告诉它在启动时启动接口。在EL6和EL7中,默认情况下此启动选项处于关闭状态,而在以前的版本中,默认情况下处于启用状态。

要使网络接口在EL7在安装时首次启动时出现,请转到网络配置屏幕中的ConfigureGeneral选项卡,然后选中标记为的框Automatically connect to the network when available

至于为什么他们改变了这一点,我猜想是出于安全原因。它使您有机会在首次启动网络接口之前,将默认设置稍加调整。


正是我要找的信息。谢谢!
SamAndrew81

8

如果您的网络中没有DHCP服务器,则必须设置一个静态IP地址。请考虑以下示例:

vim /etc/sysconfig/network-scripts/ifcfg-eth0

BOOTPROTO=none
DEVICE=eth0
IPADDR=192.168.1.10 # your IP address
NETMASK=255.255.255.0 # your netmask
NETWORK=192.168.1.0 
ONBOOT=yes

将GATEWAY添加到您的/etc/sysconfig/network文件中:

NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=hostname.domainname
GATEWAY=192.168.1.1 # your gateway

发出以下命令以在启动时启动网络:

chkconfig network on

重新启动网络服务:

service network restart

看看您的网络接口

ifconfig

5

您没有提到您使用的CentOS版本。如果我没记错的话,默认情况下6.x使用NetworkManager。

我很少在服务器上安装X窗口,因此NetworkManager令我很痛苦。我禁用它并启用标准的“网络”服务。

chkconfig NetworkManager关闭
chkconfig网络打开

服务NetworkManager停止
服务网络启动

要在接口上启用DHCP,请运行system-config-network,编辑适当的设备,保存并重新启动网络服务。或者,您可以编辑/etc/sysconfig/network-scripts/ifcfg-eth0和添加

ONBOOT=yes
BOOTPROTO=dhcp

保存更改并重新启动网络服务。


1

从我的实验和阅读中学到的东西,我完全同意Network Manager似乎默认加载,但网络服务却没有加载。

最近,当我启动一个VM主机而没有在config配置中显示eth0时,是因为我正在运行网络管理器,网络未运行,并且NM_CONTROLLED=no在我的/etc/sysconfig/network-scripts/ifcfg-eth0文件中。

运行后service network restart,eth0出现在ifconfig输出中。但是,重新启动后,它又消失了。

对我来说,解决方案似乎是设置NM_CONTROLLED=no/etc/sysconfig/network-scripts/ifcfg-eth0,则在启动时打开网络服务(chkconfig network on如乌瑟尔和alexnorthsoul点了)。我可以(应该?)可能默认情况下关闭NetworkManager,但是它现在对我有用,我担心触摸其他任何东西。

顺便说一句,我的目标是使系统遵守我选择的静态IP。当我让NetworkManager运行并设置NM_CONTROLLED=yes(或省略它)时,在ethconfig中显示了eth0,但是该地址是DHCP地址,而不是我的静态IP。因此,关闭NetworkManager可以使我免于使用DHCP,而打开网络会导致它加载包含静态IP的设置。

我不是系统管理员,而是开发人员,所以这些不是CentOS专家的话,而只是配置我所需的VM的幸存者。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.