在一个计算机系统中,可以有多个网络接口,分别对应多个网络接口配置文件,在/etc/sysconfig/network-scripts/目录下,依次编号的文件是ifcfg-eth0,ifcfg-eth1,...,ifcfg-eth<X>。常用的是ifcfg-eth0,表示第一个网络接口配置文件。
ifcfg-eth0示例:
[plain] view plain copy
- TYPE=Ethernet
- DEVICE=eth0
- BOOTPROTO=none
- ONBOOT=yes
- IPADDR=10.0.1.27
- NETMASK=255.255.255.0
- GATEWAY=10.0.1.1
- BROADCAST=10.10.1.255
- HWADDR=00:0C:29:13:5D:74
- PEERDNS=yes
- DNS1=10.0.1.41
- USERCTL=no
- NM_CONTROLLED=no
- IPV6INIT=yes
- IPV6ADDR=FD55:faaf:e1ab:1B0D:10:14:24:106/64
1. 配置参数说明
注:这些参数值不区分大小写,不区分单引号和双引号,甚至可以不用引号。
TYPE:配置文件接口类型。在/etc/sysconfig/network-scripts/目录有多种网络配置文件,有Ethernet 、IPsec等类型,网络接口类型为Ethernet。
DEVICE:网络接口名称
BOOTPROTO:系统启动地址协议
none:不使用启动地址协议
bootp:BOOTP协议
dhcp:DHCP动态地址协议
static:静态地址协议
ONBOOT:系统启动时是否激活
yes:系统启动时激活该网络接口
no:系统启动时不激活该网络接口
IPADDR:IP地址
NETMASK:子网掩码
GATEWAY:网关地址
BROADCAST:广播地址
HWADDR/MACADDR:MAC地址。只需设置其中一个,同时设置时不能相互冲突。
PEERDNS:是否指定DNS。如果使用DHCP协议,默认为yes。
yes:如果DNS设置,修改/etc/resolv.conf中的DNS
no:不修改/etc/resolv.conf中的DNS
DNS{1, 2}:DNS地址。当PEERDNS为yes时会被写入/etc/resolv.conf中。
NM_CONTROLLED:是否由Network Manager控制该网络接口。修改保存后立即生效,无需重启。被其坑过几次,建议一般设为no。
yes:由Network Manager控制
no:不由Network Manager控制
USERCTL:用户权限控制
yes:非root用户允许控制该网络接口
no:非root用户不运行控制该网络接口
IPV6INIT:是否执行IPv6
yes:支持IPv6
no:不支持IPv6
IPV6ADDR:IPv6地址/前缀长度
2. 配置生效
修改网络配置,最简单地是使用ifconfig命令,无需重启,立即生效。关于ifconfig的知识在博文《Linux命令 — 设置或查看网络配置命令ifconfig》中有详细介绍。ifconfig配置的网络只是当前临时有效,当计算机重启之后就失效了。为了使网络配置永久有效,就需要在/etc/sysconfig/network-scripts/下修改网络接口配置文件。但是,这些文件修改后,并不能立即生效。有两种方式使修改文件的网络配置生效:
1) 执行service network restart命令,重启网络服务(推荐)
2) 重启计算机
Reference
Network Interfaces in 《Red Hat Enterprise Linux 4: Reference Guide》
网络接口配置文件
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
TYPE=Ethernet #网卡类型
DEVICE=eth0 #网卡接口名称
ONBOOT=yes #系统启动时是否自动加载
BOOTPROTO=static #启用地址协议 --static:静态协议 --bootp协议 --dhcp协议
IPADDR=192.168.1.11 #网卡IP地址
NETMASK=255.255.255.0 #网卡网络地址
GATEWAY=192.168.1.1 #网卡网关地址
DNS1=10.203.104.41 #网卡DNS地址
HWADDR=00:0C:29:13:5D:74 #网卡设备MAC地址
BROADCAST=192.168.1.255 #网卡广播地址
重新导入ifcfg-eth0网络配置文件
[root@localhost ~]# /etc/init.d/network reload
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
网卡接口关闭与激活
[root@localhost ~]# ifdown eth0 #关闭网络
[root@localhost ~]# ifup eth0 #启动网络
网络服务启动与关闭
方法一:
[root@localhost ~]# service network stop #关闭网络服务
[root@localhost ~]# service network start #启动网络服务
[root@localhost ~]# service network restart #重启网络服务
方法二:
[root@localhost ~]# /etc/init.d/network stop
[root@localhost ~]# /etc/init.d/network start
[root@localhost ~]# /etc/init.d/network restart
网卡状态查询
[root@localhost ~]# service network status
Configured devices:
lo eth0
Currently active devices:
lo eth0
临时配置网卡信息,无需重启。
[root@localhost ~]# ifconfig eth0 10.1.1.10 netmask 255.0.0.0
查看网卡接口信息,默认列出所有接口
[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:13:5D:74
inet addr:192.168.1.11 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe13:5d74/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:413 errors:0 dropped:0 overruns:0 frame:0
TX packets:572 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:47701 (46.5 KiB) TX bytes:64842 (63.3 KiB)
Base address:0x2000 Memory:d8920000-d8940000
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:407 errors:0 dropped:0 overruns:0 frame:0
TX packets:407 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:70759 (69.1 KiB) TX bytes:70759 (69.1 KiB)
查看当前路由及网关信息
[root@localhost ~]# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
DNS:
主机名:CentOS
主DNS:202.106.46.151
第二DNS:202.106.0.20
第三DNS:8.8.8.8
网络配置:
eth0
静态ip:192.168.1.106
子网掩码 255.255.255.0
默认网关 IP 192.168.1.1
DEVICE=eth0
IPADDR=192.168.1.106
NETMASK=255.255.255.0
BROADCAST=192.168.1.255
ONBOOT=yes
BOOTPROTO=none
GATEWAY=192.168.1.1
TYPE=Ethernet
"/etc/sysconfig/network-scripts/ifcfg-eth0" 11L, 187C
通过查资料与工作中的进行一下总结:
DEVICE="eth1"
网卡名称
NM_CONTROLLED="yes"
network mamager的参数 ,是否可以由NNetwork Manager托管
HWADDR=
MAC地址
TYPE=Ethernet
类型
PREFIX=24
子网掩码24位
DEFROUTE=yes
就是default route,是否把这个eth设置为默认路由
ONBOOT=yes
设置为yes,开机自动启用网络连接
IPADDR=
IP地址
BOOTPROTO=none
设置为none禁止DHCP,设置为static启用静态IP地址,设置为dhcp开启DHCP服务
NETMASK=255.255.255.0
子网掩码
DNS1=8.8.8.8
第一个dns服务器
BROADCAST
广播
UUID
唯一标识
TYPE=Ethernet
网络类型为:Ethernet
BRIDGE=
设置桥接网卡
GATEWAY=
设置网关
DNS2=8.8.4.4 #
第二个dns服务器
IPV6INIT=no
禁止IPV6
USERCTL=no
是否允许非root用户控制该设备,设置为no,只能用root用户更改
NAME="System eth1"
这个就是个网络连接的名字
MASTER=bond1
指定主的名称
SLAVE
指定了该接口是一个接合界面的组件。
NETWORK
网络地址
ARPCHECK=yes
检测
PEERDNS
是否允许DHCP获得的DNS覆盖本地的DNS
PEERROUTES
是否从DHCP服务器获取用于定义接口的默认网关的信息的路由表条目
IPV6INIT
是否启用IPv6的接口。
IPV4_FAILURE_FATAL=yes
如果ipv4配置失败禁用设备
IPV6_FAILURE_FATAL=yes
如果ipv6配置失败禁用设备
技术链接