Linux系统管理_网络地址配置-Redhat Enterprise 5.9


一:网络地址的临时设置

1,临时ip地址:ifconfig

2,临时网关:route add default gw IP地址

3,临时静态路由:route add -net 目标网段 gw IP地址

二:网络地址的永久设置

1,永久ip地址:/etc/sysconfig/network-scripts/ifcfg-ethX(X表示0-N)

2,永久网关:/etc/sysconfig/network

3,永久DNS:/etc/resolv.conf

4,永久静态路由:static-routes或route-ethX

三:扩展

1,修改主机名

2主机映射文件:/etc/hosts

3修改网卡的MAC地址


一:网络地址的临时设置

1,临时ip地址的设置:

ifconfig 设备名 ip地址[netmask 子网掩码]

示例:

[root@zhangsp ~]# ifconfig eth0192.168.1.1

[root@zhangsp ~]# ifconfig eth0

eth0     Link encap:Ethernet  HWaddr00:0C:29:82:09:E8  

inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0

        inet6 addr: fe80::20c:29ff:fe82:9e8/64 Scope:Link

        UP BROADCAST RUNNING MULTICAST MTU:1500  Metric:1

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

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

        collisions:0 txqueuelen:1000

        RX bytes:1041186 (1016.7 KiB)  TXbytes:920252 (898.6 KiB)


[root@zhangsp ~]# ifconfig eth0192.168.1.2 netmask 255.255.255.240

[root@zhangsp ~]# ifconfig eth0

eth0     Link encap:Ethernet  HWaddr00:0C:29:82:09:E8  

inet addr:192.168.1.2 Bcast:192.168.1.255  Mask:255.255.255.240

        inet6 addr: fe80::20c:29ff:fe82:9e8/64 Scope:Link

        UP BROADCAST RUNNING MULTICAST MTU:1500  Metric:1

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

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

        collisions:0 txqueuelen:1000

        RX bytes:1041738 (1017.3 KiB)  TXbytes:923390 (901.7 KiB)


[root@zhangsp ~]#


2,临时网关设置:

route add default gwIP地址     //增加一个默认网关

route del default gwIP地址     //删除一个默认网关

示例:

[root@zhangsp ~]# route -n  //可以看到,没有网关地址

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.1.0     0.0.0.0         255.255.255.0   U    0      0        0 eth0

192.168.30.0    0.0.0.0         255.255.255.0   U    0      0        0 eth1

169.254.0.0     0.0.0.0         255.255.0.0     U    0      0        0 eth1

[root@zhangsp ~]# route add default gw 192.168.1.254    //增加网关192.168.1.254

[root@zhangsp ~]# route -n  //再次查看,添加了一条网关

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.1.0     0.0.0.0         255.255.255.0   U    0      0        0 eth0

192.168.30.0    0.0.0.0         255.255.255.0   U    0      0        0 eth1

169.254.0.0     0.0.0.0         255.255.0.0     U    0      0        0 eth1

0.0.0.0         192.168.1.254   0.0.0.0         UG   0      0        0 eth0

[root@zhangsp ~]# route del default gw 192.168.1.254    //删除默认网关

[root@zhangsp ~]# route -n  //成功删除

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.1.0     0.0.0.0         255.255.255.0   U    0      0        0 eth0

192.168.30.0    0.0.0.0         255.255.255.0   U    0      0        0 eth1

169.254.0.0     0.0.0.0         255.255.0.0     U    0      0        0 eth1

[root@zhangsp ~]#


3,临时静态路由设置:

route add -net 网段/子网掩码 gw IP地址  //增加一个静态路由

route del -net 网段 //删除一个静态路由


注:一般设置完静态路由后,启动linux的转发功能,这时需要开启linux的ipv4转发功能,也就是将/etc/sysctl.conf文件里的net.ipv4.ip_forward的值设为1,详情请看linux变身路由器http://murongqingqqq.blog.51cto.com/2902694/1363519


示例:

[root@zhangsp ~]# route add -net 192.168.10.0/24 gw 192.168.1.2

//增加一条到192.168.10.0网段的静态路由,下一跳地址为192.168.1.2

[root@zhangsp ~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.1.0     0.0.0.0         255.255.255.0   U    0      0        0 eth0

192.168.30.0    0.0.0.0         255.255.255.0   U    0      0        0 eth1

192.168.10.0    192.168.1.2     255.255.255.0   UG   0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U    0      0        0 eth1

[root@zhangsp ~]# route del -net 192.168.10.0

[root@zhangsp ~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.1.0     0.0.0.0         255.255.255.0   U    0      0        0 eth0

192.168.30.0    0.0.0.0         255.255.255.0   U    0      0        0 eth1

169.254.0.0     0.0.0.0         255.255.0.0     U    0      0        0 eth1

[root@zhangsp ~]#



注:临时指定的ip地址,网关,静态路由在设置之后会立即生效,但是在network服务重新启动或者系统重新启动之后都将不存在,需要从新设置,因此只适用于测试网络。


二:网络地址的永久设置

1,永久ip地址:

ip地址的配置文件存放位置在:/etc/sysconfig/network-scripts/ifcfg-ethX文件内。


注:获得ip地址的方式有两种,一种是动态获取,一种是静态设置,那么静态设置的即为永久的ip地址,


动态获取ip地址的标准文件为(拿第一块网卡eth0示例):

[root@zhangsp ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

# Intel Corporation 82545EM Gigabit Ethernet Controller(Copper)

DEVICE=eth0     //网卡的设备名

BOOTPROTO=dhcp      //dhcp代表动态获取,static和none代表静态设置

HWADDR=00:0C:29:82:09:E9        //物理MAC地址

ONBOOT=yes      //随network服务启用

[root@zhangsp ~]#


静态设置ip地址的标准文件为:

[root@zhangsp ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

# Intel Corporation 82545EM Gigabit Ethernet Controller(Copper)

DEVICE=eth0

BOOTPROTO=none      //static和none都是指定为静态设置ip地址

HWADDR=00:0C:29:82:09:E9

ONBOOT=yes

IPADDR=192.168.20.2     //指定ip地址为192.168.20.2

NETMASK=255.255.255.0   //指定子网掩码为255.255.255.0

[root@zhangsp ~]#


2,永久网关设置:

存放在:/etc/sysconfig/network文件中


[root@zhangsp ~]# cat /etc/sysconfig/network

NETWORKING=yes

NETWORKING_IPV6=no      //是否启用IPV6,系统默认为支持(yes),这里可以修改为no

HOSTNAME=zhangsp.tarena.com     //主机名,扩展1里详解

GATEWAY=192.168.20.1        //设置网关地址

[root@zhangsp ~]#


注:

1,网关地址可以和ip地址写在同一个文件里,但是老版本的linux操作系统都是分开写的,写在/etc/sysconfig/network文件里,所以,推荐将其分开;

2,配置完/etc/sysconfig/network文件之后不会立即生效,需要重新启动network服务才能生效。


3,永久DNS设置:

DNS地址存放在:/etc/resolv.conf文件中


[root@zhangsp~]# cat /etc/resolv.conf

; generated by /sbin/dhclient-script

search tarena.com

nameserver 202.106.0.20

nameserver 8.8.8.8

nameserver 4.4.4.4

[root@zhangsp~]#


注:

1,DNS地址可以和ip地址放在同一个文件里,重启网络服务或者重启系统之后/etc/resolv.conf文件可以自动获取到dns地址;

2,/etc/resolv.conf文件里面的nameserver指定的dns地址最多三个;

3,推荐将dns地址写在/etc/resolv.conf文件内。


4,永久静态路由:有三种,这里示例两种,详细请看备注


第一种方法:

存放在/etc/sysconfig/static-routes文件内。(需要创建)

格式为:any net 到达网段/掩码 gw 下一跳地址


[root@zhangsp~]# cat /etc/sysconfig/static-routes

any net 192.168.10.0/24 gw 192.168.20.1 //表示当前网络到达192.168.10.0/24网络,

                                   //下一跳地址为192.168.20.1

[root@zhangsp~]#

第二种方法:

存放在/etc/sysconfig/network-scripts/route-ethX文件内。(需要创建)

格式为:网段/掩码 via 吓一跳地址

[root@localhost ~]# cat /etc/sysconfig/network-scripts/route-eth0

192.168.10.0/24 via 192.168.20.1


注:

1,如果想要使静态路由配置文件生效,需要为网卡配置ip地址,然后重新启动network或者重新启动linux服务器;

2,这个文件系统中默认是没有的,也就是说,要想设置永久的静态路由,需要在/etc/sysconfig目录下新建static-routes这个文件。


3,永久静态路由设置有三种方法:

3.1,在/etc/rc.local文件中增加一条静态路由命令,重新启动linux服务器的时候,将执行/etc/rc.local文件,那么静态路由就会默认加载了;

3.2,新建/etc/sysconfig/static-routes文件并将配置内容写入该文件中,重启network服务或者重新启动主机都可以使其生效,推荐使用这种方法,可以重新启动network服务来加载这个文件。

3.3,新建/etc/sysconfig/network-scripts/route-eth0,并将配置内容写入该文件,重启network服务或者重新启动主机可使其生效,推荐使用!



三:扩展

1,修改主机名

主机名网关一般存放在:/etc/sysconfig/network文件当中

[root@aaa ~]# cat /etc/sysconfig/network

NETWORKING=yes

NETWORKING_IPV6=no      //是否启动ipv6,默认启动,这里可以修改为no,即不启动

HOSTNAME=aaa.tarena.com         //这个就是主机名

GETWAY=192.168.20.2         //这个是网关

[root@aaa ~]#


注:修改完这个文件的主机名之后,需要修改/etc/hosts文件对应的主机名和ip地址,否则在重启的时候,系统中有的服务识别的是主机名(比如mail服务),那么由于找不到主机名,可能引起启动时间非常长。



2,主机映射文件:/etc/hosts


[root@aaa~]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1              localhost.localdomain localhost

::1             localhost6.localdomain6 localhost6

192.168.10.254 aaa.tarena.com  aaa

192.168.20.1   aaa.tarena.com  aaa

[root@aaa~]#



3,修改网卡的MAC地址:

在/etc/sysconfig/network-scripts/ifcfg-eth0文件中,也可以修改MAC地址,修改的时候需要注意的是,先把原先的HWADDR=00:0C:29:CD:14:F3这一段话注释掉,别删除,免得以后不知道原来的MAC地址了;而且修改后的MAC地址应写为:MACADDR=00:0C:29:CD:14:F1


[root@aaa~]# ifconfig eth0 | grep HWaddr

eth0      Linkencap:Ethernet  HWaddr 00:0C:29:CD:14:F3

[root@aaa~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)

DEVICE=eth0

BOOTPROTO=none

HWADDR=00:0C:29:CD:14:F3

ONBOOT=yes

IPADDR=192.168.10.254

NETMASK=255.255.255.0

[root@aaa~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

[root@aaa~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)

DEVICE=eth0

BOOTPROTO=none

#HWADDR=00:0C:29:CD:14:F3

MACADDR=00:0C:29:CD:14:22

ONBOOT=yes

IPADDR=192.168.10.254

NETMASK=255.255.255.0

[root@aaa~]# service network restart

正在关闭接口 eth0:                                        [确定]

正在关闭接口 eth1:                                        [确定]

关闭环回接口:                                             [确定]

禁用 IPv4 包转送: net.ipv4.ip_forward = 0

                                                         [确定]

弹出环回接口:                                             [确定]

弹出界面 eth0:                                            [确定]

弹出界面 eth1:                                            [确定]

[root@aaa~]# ifconfig eth0 | grep HWaddr

eth0      Linkencap:Ethernet  HWaddr 00:0C:29:CD:14:22

[root@aaa~]#



总结:linux中的网络配置有临时的,有永久的,临时的执行完命令之后立即生效,但是重新启动网络(network)服务或者重新启动系统,会立即失效;那么,这时就需要设置永久的网络配置了,永久的网络配置设置完不会立马生效,但是在重新启动网络服务或者重新启动系统之后会生效,一般服务器中网络配置都是永久的,临时的在测试的时候用!