1) 一开始系统是dhcp自动获得ip,查看系统的ip,类似如下: (这步比较关键,找到对应的网络设备和配置文件)

root@Centos_AAA ~]# ifconfig

eth6 Link encap:Ethernet HWaddr 08:00:27:C1:E4:3D

inet addr:192.168.0.103  Bcast:192.168.0.255 Mask:255.255.255.0

inet6 addr: fe80::a00:27ff:fec1:e43d/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:108 errors:0 dropped:0 overruns:0 frame:0

TX packets:32 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:12689 (12.3 KiB) TX bytes:5908 (5.7 KiB)

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:8 errors:0 dropped:0 overruns:0 frame:0

TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)

 

2) 修改对应的/etc/sysconfig/network-scripts/ifcfg-eth6,但是我的下面这个文件并不存在,所以直接创建此文件,文件的内容修改如下:

DEVICE=eth6

HWADDR="08:00:27:C1:E4:3D"

NM_CONTROLLED=yes

ONBOOT=yes

TYPE=Ethernet

IPADDR=192.168.0.120

BOOTPRO=static

NETMASK=255.255.255.0

DNS1=192.168.0.1

NETWORKING_IPV6=no

IPV6INIT=no

IPV6_AUTOCONF=no

GATEWAY=192.168.0.1

3)修改/etc/sysconfig/network文件如下:

NETWORKING=yes

NETWORKING_IPV6=no

IPV6INIT=no

HOSTNAME=Centos_AAA

GATWAY=192.168.0.1

 

4)重启service network restart

 

5)重启系统shutdown -r now

 

6) 查看新的ip: ipconfig 

 

7)但是这个时候发现问题,可以访问内网,但是不能访问外网。

貌似在/etc/resolv.conf中配置dns不起作用,打开提示如下:

# Generated by NetworkManager

# No nameservers found; try putting DNS servers into your

# ifcfg files in /etc/sysconfig/network-scripts like so:

#

# DNS1=xxx.xxx.xxx.xxx

# DNS2=xxx.xxx.xxx.xxx

# DOMAIN=lab.foo.com bar.foo.com

查资料说必须将dns的配置加入到/etc/sysconfig/network-scripts/ifcfg-eth6, 增加DNS1=192.168.0.1。

但是这个时候还是不行,最后查的资料是缺少默认的路由设置,需要增加如下文件/etc/sysconfig/network-scripts/route-eth6,内容为:via 192.168.0.1。

然后重启网络就可以了。

 

8) /etc/hosts文件设置如下:但是应该是跟ip和dns的配置问题没有关系的

27.0.0.1 localhost.localdomain localhost

192.168.0.120 Centos_AAA Centos_AAA

::1 localhost6.localdomain6 localhost6

 

9) 但是发现静态ip在关机重启后就不起作用了,原因是没有将network service设置为自动随机器启动,修改如下:

需要启动network service:

[root@Centos_AAA ~]# chkconfig network on

[root@Centos_AAA ~]# chkconfig --list | less

network 0:off 1:off 2:on 3:on 4:on 5:on 6:off

 

10)在重启机器后只有ipv6,没有ipv4, 需要手动执行service network start才可以进入固定的ip4状态。 这个问题如何解决???(原因为network和NetworkManager两个services冲突)

先停止ipv6,在/etc/sysctl.conf的最后加入:

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

然后再停止networkmanager service:

chkconfig --level123456 NetworkManager off

个人觉得为了避免两个service类似的功能冲突,NetworkManager不应该是个service,只应该是对network service的一个上层包装好了。