CentOS 6 for colinux的网络配置
上一篇偶介绍了在windows平台下如何利用qemu来制作了colinux平台下的centos 6.0最小化安装的Image文件;这篇接着着重介绍centos 6.0在colinux平台下的网络配置。
一、 安装网络配置软件
首先在windows下配置上一篇安装colinux产生的"本地连接2"虚拟网卡的属性,如下图:
并选择【Internet协议(TCP/IP)】然后点击下方【属性】按钮后弹出下图:
填入IP地址为192.168.0.1及子网掩码255.255.255.0并点击【确定】后,并在"本地连接 2"属性页中再次点击【确定】保存;然后再用上一篇生成的批处理文件centos.bat来启动centos 6 for colinux。由于这时在colinux平台下启动了centos 6最小化安装版本,centos里网络设备是空的,这可以用命令ifconfig查看,结果如下图所示;
对于在centos增加网络设备可以直接用vi等文本编辑器编辑或生成相应的网络设备配置文件,也可以用控制台下的文本图形界面配置工具来配置。偶这里主要用控制台下的文本图形界面配置工具来配置,因此需要安装相应的控制台下的文本图形界面配置工具。Centos 6的网络配置的文本图形界面是setuptool及system-config-network-tui软件包,这两个软件包在未上网的情况下只能从centos 6的光盘或ISO中获取,可用下列命令mount对应centos 6 的ISO文件及安装这两软件包:
[root@jhuix ~]# mkdir /media/cdrom
[root@jhuix ~]# mount /dev/cobd2 /media/cdrom
[root@jhuix ~]# yum -disablerepo=\* --enablerepo=c6-media install setuptool
这时安装setuptool软件包如下图所示,
键入”y”及回车后会执行安装该软件包,安装完成结束如下图所示,
接着再输入命令
[root@jhuix ~]# yum –disablerepo=\* --enablerepo=c6-media install system-config-network-tui
来安装system-config-network-tui软件包,如下图所示,
同样键入”y”及回车后会执行安装该软件包,安装完成结束如下图所示,
至此,偶所需的两个网络配置工具软件包已经安装完成,下面就该进行具体的网络设备添加及配置了。
二、 网络设备的配置
执行上述安装的网络配置工具命令是”setup”,在控制台键入[root@jhuix ~]# setup后出现如下图:
选中【Network configuration】选项并回车后出现如下图:
选中【Device configuration】选项并回车后出现如下图:
这里已经有一网络设备eth0(即第一块网卡),这是由于用qemu安装是留下的,选择eth0网卡选项并回车后出现如下图:
并在上图中的各项输入图中内容,这里的eth0(在colinux中用slirp模式)配置的IP为10.0.2.17和网关10.0.2.2,是依据上一篇中colinux的centos.conf配置中表述的那样是连接Internet外网所需的colinux内部一网关所定义的网段:
# Slirp for internet connection (outgoing)
# Inside running coLinux configure eth0 with this static settings:
# ipaddress 10.0.2.15 broadcast 10.0.2.255 netmask 255.255.255.0
# gateway 10.0.2.2 nameserver 10.0.2.3
按上图中所示的配置好后,选择【OK】按钮后回退至如下图:
选择【Save】按钮回退至如下图:
选择【DNS configuration】及回车出现如下图:
输入【Hostname】这里为jhuix.centos6;以及输入【Primary DNS】为10.0.2.3(即nameserver);然后选择【OK】按钮回退至下图:
选择【Save&Quit】按钮上述保存设置,并回退至如下图:
选择【Quit】退出网络配置工具。
退出网络配置工具后,尝试用命令重启网络
[root@jhuix ~]# service network restart
结果出现如下图:
从图中看到eth0设备并没有被启动,因此用下面命令查看并编辑该设备具体的配置内容
[root@jhuix ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
结果如下图所示:
从上图内容所示,原来是ONBOOT标识没有yes和NM_CONTROLLED标识没有为 no的导致不能启动eth0设备;修改后如下图所示:
修改好后用”:wq”命令保存后,重新尝试用命令重启网络
[root@jhuix ~]# service network restart
结果又出现如下图所示:
从图中所示内容得知是由于eth0设备名不存在导致eth0还是没有被启动;于是用下列命令查看现有的网卡设备名有那些
[root@jhuix ~]# ls /sys/class/net –l
结果如图所示:
从图中获知还真没有eth0设备,不过有两块网卡设备eth1\eth3,理论上这两设备名应该是eth0/eth1的(因为这应该是由colinux的centos.conf配置文件中配置好的),那么偶用下面的命令强制把eth1/eth3改成eth0/eth1(注意这里的对应关系: /devices/pci000:00/0000:00:00.0对应eth0、/devices/pci000:00/0000:00:00.1对应eth1)
[root@jhuix ~]# ip link set dev eth1 name eth0
[root@jhuix ~]# ip link set dev eth3 name eth1
修改完设备名后,并且用下列命令尝试挂载
[root@jhuix ~]# ifup eth0
[root@jhuix ~]# ifup eth1
结果如图所示:
从图中所示内容得知eth0是由于MAC地址不匹配(这是由于用qemu安装时指定的网卡MAC地址与colinux自动生成的网卡设备MAC地址是不一样的)、eth1是由于还没有配置导致没有被挂载上;因此需要对eth0的配置文件中删除MAC地址并让 setup重新配置后会自动获取现有eth0设备的MAC地址以及也用setup新增eth1设备配置。那么偶先用命令
[root@jhuix ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
编辑eth0配置文件并删除MAC地址(即删除/etc/sysconfig/network-scripts/ifcfg-eth0文件中的HWADDR标识行),结果如图所示:
保存配置后,用setup命令
[root@jhuix ~]# setup
刷新eth0的新MAC地址及新增eth1的配置,出现如下图:
选中【Network configuration】选项并回车后出现如下图:
选中【Device configuration】选项并回车后出现如下图:
选择eth0选项回车后出现如下图:
在任一项中改写并修改回去一下后选择【OK】按钮回退至下图:
选择【<New Device>】后出现如下图:
选择【Add】按钮后出现下图:
输入图中内容并选择【OK】按钮回车并退回至如下图:
选择【Save】按钮保存设置并回退至如下图:
选择【Save&Quit】按钮上述保存设置,并回退至如下图:
选择【Quit】退出网络配置工具。
退出网络配置工具后,用命令
[root@jhuix ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
查看并修改配置文件中ONBOOT标识为yes,如下图:
保存修改后,也命令
[root@jhuix ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
查看eth0的配置文件如下图:
图中可以看到eth0的新MAC地址(HWADDR标识)已经被重新获取到;退出编辑后接着继续尝试用命令
[root@jhuix ~]# service network restart
重启网络,结果出现如下图:
可喜可贺,终于成功挂载并启动两块网卡设备;用命令
[root@jhuix ~]# ifconfig
查看可看到如下图的详细信息:
三、 路由的配置
经过上述网络配置及成功启动后,用命令
[root@jhuix ~]# ping 10.0.2.2
[root@jhuix ~]# ping 192.168.0.1
都能通,可是用命令
[root@jhuix ~]# ping www.163.com
却不通,如下图所示:
理论上通过colinux内置10.0.2.2网关是可以通达internet网的,问题出在那里呢?
于是用命令
[root@jhuix ~]# route
查看路由情况,结果如下图所示:
从显示的路由情况看,原来是默认网关被自动配成192.168.0.1导致不能连上internet网;于是偶用命令
[root@jhuix ~]# vi /etc/sysconfig/network
编辑该配置文件,在启后面添加
GATEWAY=10.0.2.2
GATEWAYDEV=eth0
两标识项(GATEWAY默认网关地址、GATEWAYDEV默认网关所在设备),来实现配置默认网关为10.0.2.2,如下图:
保存了修改的配置文件后,再重新用命令
[root@jhuix ~]# service network restart
重启网络后,再用命令
[root@jhuix ~]# route
查看路由情况时,默认网关已经被修改为10.0.2.2了,如下图:
接着再用命令
[root@jhuix ~]# ping www.163.com
ping时,结果喜人(通了),如下图:
四、一处异常的修正
在关闭该虚拟系统(用命令shutdown -h now)时,会出现下图所示的一处错误:
该处错误是由于centos系统在关闭时需要同步时钟至BIOS,而colinux没有虚拟BIOS,因此就产生该错误;那么我们就要在关机脚本中修改同步时钟相关脚本,让其在colinux平台上不需要同步时钟功能即可;重新启动colinux的centos 6系统后,用如下操作来修改关闭脚本:
[root@jhuix ~]# vi /etc/rc.d/init.d/halt
并用命令“?hwclock”查找关键词,结果如下图:
把
[ -x /sbin/hwclock ] && action $"Syncing hardware clock to system time" /sbin/hwclock --systohc
该行脚本修改成如下:
if ! uname -r | grep -q -e "-co-"
then
[ -x /sbin/hwclock ] && action $"Syncing hardware clock to system time" /sbin/hwclock --systohc
fi
如下图所示:
修改好脚本并保存后,再用命令shutdown -h now关闭centos系统时,就不会再报错误了,如下图所示:
由于在写第三篇文章时CentOS 6.1正式发布了,因此就又直接做了CentOS 6.1的colinux下的image文件并上传至网盘中分享,见下面的附件链接:
附件:CentOS 6.1 for colinux的Image文件(已完成网络设置并安装了基础的gnome桌面、vncserver等,大小2GB)下载地址