centos6 网络配置的相关内容
目录
添加网卡方法
在 CentOS 6 中添加网卡的方法:
start_udev
这个命令会重新扫描新加的硬件并做相关的处理。
如果我们加的是网卡,识别不对或者想更新网卡的名字,我们并不需要编辑 /etc/sysconfig/network-scripts/
下的内容。运行完上面命令后如果不正常,直接修改 udev 有关网络的配置就行了。
Udev 网络配置
有关网络的 udev 的具体网卡序号的配置文件是 /etc/udev/rules.d/70-persistent-net.rules
这个文件。
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="54:52:00:78:e8:2e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="54:52:00:04:19:6c", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
像上面这样,最多修改一下 MAC 地址和 NAME 大多都能达到我们的需求。
修改完了,我们可以使用 udev 的命令来测试一下:
udevadm test /sys/class/net/eth0/
这个可以很详细的显示 udev 的识别和处理的过程。
网络配置文件处理
另外需要注意一点,新加的硬件,如果在 setup 和 system-config-network-tui 中添加了网卡,但 /etc/sysconfig/network-scripts/
找不到配置文件时。其实是因为这些命令默认会给生成的配置文件放到 /etc/sysconfig/networking/devices/
。所以这时,只要把这下面的配置文件拷贝到 /etc/sysconfig/network-scripts/
,再使用 system-config-network-tui 来配置就正常了。
cp /etc/sysconfig/networking/devices/* /etc/sysconfig/network-scripts/
重新启动后就可以了。
添加的网卡,如果在 /etc/sysconfig/network-scripts/
下没有配置类似于 ifcfg-eth0,就直接复制一份即可。
CentOS 6 网络配置详解
一、配置文件详解
在 RHEL 或者 CentOS 等 Redhat 系的 Linux 系统里,跟网络有关的主要设置文件如下:
文件路径 | 功能描述 |
---|---|
/etc/host.conf | 配置域名服务客户端的控制文件 |
/etc/hosts | 完成主机名映射为 IP 地址的功能 |
/etc/resolv.conf | 域名服务客户端的配置文件,用于指定域名服务器的位置 |
/etc/sysconfig/network | 包含了主机最基本的网络信息,用于系统启动 |
/etc/sysconfig/network-script/ | 系统启动时初始化网络的一些信息 |
/etc/xinetd.conf | 定义了由超级进程 xinetd 启动的网络服务 |
/etc/networks | 完成域名与网络地址的映射 |
/etc/protocols | 设定了主机使用的协议以及各个协议的协议号 |
/etc/services | 设定主机的不同端口的网络服务 |
1. /etc/host.conf
文件
默认信息如下:
multi on # 允许主机拥有多个 IP 地址
order hosts,bind # 主机名解析顺序,即本地解析,DNS 域名解析的顺序
这个文件一般不需要我们修改,默认的解析顺序是本地解析、DNS 服务器解析。
2. /etc/hosts
文件
默认的内容大概如下:
127.0.0.1 butbueatiful localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
可见,默认的情况是本机 ip 和本机一些主机名的对应关系,第一行是 ipv4 信息,第二行是 ipv6 信息。
测试解析效果:
[root@butbueatiful ~]# ping -c 3 butbueatiful
PING butbueatiful (127.0.0.1) 56(84) bytes of data.
64 bytes from butbueatiful (127.0.0.1): icmp_seq=1 ttl=64 time=0.061 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=2 ttl=64 time=0.052 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=3 ttl=64 time=0.051 ms
[root@butbueatiful ~]# ping -c 3 localhost.localdomain
PING butbueatiful (127.0.0.1) 56(84) bytes of data.
64 bytes from butbueatiful (127.0.0.1): icmp_seq=1 ttl=64 time=0.055 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=2 ttl=64 time=0.035 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=3 ttl=64 time=0.050 ms
添加新的本地解析:
192.168.0.100 yyyy.com www.yyyy.com
3. /etc/resolv.conf
指定域名解析的 DNS 服务器 IP 等信息,配置参数:
nameserver
- 指定 DNS 服务器的 IP 地址domain
- 定义本地域名信息search
- 定义域名的搜索列表sortlist
- 对 gethostbyname 返回的地址进行排序
配置示例(使用 Google DNS):
nameserver 8.8.8.8
nameserver 8.8.4.4
4. /etc/sysconfig/network
典型配置:
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=butbueatiful
GATEWAY=192.168.0.1
参数说明:
参数 | 说明 |
---|---|
NETWORKING | 设置网络是否有效,yes 有效,no 无效 |
NETWORKING_IPV6 | 设置 ipv6 网络是否有效,yes 有效,no 无效 |
HOSTNAME | 设置服务器的主机名 |
GATEWAY | 指定默认网关 IP |
5. ifcfg-ethX
网卡配置文件
配置示例 /etc/sysconfig/network-scripts/ifcfg-eth0
:
DEVICE="eth0"
BOOTPROTO="static"
BROADCAST="192.168.0.255"
HWADDR="00:16:36:1B:BB:74"
IPADDR="192.168.0.100"
NETMASK="255.255.255.0"
ONBOOT="yes"
参数说明:
参数 | 说明 |
---|---|
DEVICE | 设备名,不要自己乱改 |
BROADCAST | 广播地址 |
HWADDR | 物理地址,不要乱改 |
IPADDR | IP 地址 |
NETMASK | 子网掩码 |
ONBOOT | 启动或者重启网络时,是否启动该设备 |
BOOTPROTO | 开机协议:static(静态 IP)、none、dhcp(动态获得 IP) |
6. route-ethX
路由配置文件
设置静态路由示例:
# 动态添加路由
[root@butbueatiful ~]# route add -net 172.17.27.0 netmask 255.255.255.0 gw 192.168.0.254 dev eth0
# 永久静态路由配置
[root@butbueatiful ~]# vi /etc/sysconfig/network-scripts/route-eth0
# 追加
172.17.27.0/24 via 192.168.0.254
二、常用的网络配置命令
传统命令方式
ifconfig 命令
ifconfig eth0 up # 开启 eth0 网卡
ifconfig eth0 down # 关闭 eth0 网卡
ifconfig eth0 -arp # 关闭 eth0 网卡 arp 协议
ifconfig eth0 promisc # 开启 eth0 网卡的混合模式
ifconfig eth0 mtu 1400 # 设置 eth0 网卡的最大传输单元为 1400
ifconfig eth0 192.168.0.2/24 # 设置 eth0 网卡 IP 地址
ifconfig eth0 192.168.0.2 netmask 255.255.255.0 # 功能同上
hostname 命令
hostname # 查看主机名
hostname butbueatiful.com # 设置主机名为 butbueatiful.com
route 命令
# 添加路由
route add -net 192.168.3.0/24 gw 192.168.0.254 # 设置到 192.168.3.0 网段的网关
route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.0.254 # 功能同上
route add -host 192.168.4.4 gw 192.168.0.254 # 设置到主机的网关
route add default gw 192.168.0.254 # 设置默认网关
# 删除路由
route del -net 192.168.3.0/24 # 删除网段的网关信息
route del -host 192.168.4.4 # 删除主机的网关信息
route del default gw 192.168.0.254 # 删除默认网关
现代 ip 命令(推荐)
网络接口管理
ip link show # 显示网络接口信息
ip link set eth0 up # 开启网卡
ip link set eth0 down # 关闭网卡
ip link set eth0 promisc on # 开启网卡的混合模式
ip link set eth0 promisc off # 关闭网卡的混合模式
ip link set eth0 txqueuelen 1200 # 设置网卡队列长度
ip link set eth0 mtu 1400 # 设置网卡最大传输单元
IP 地址管理
ip addr show # 显示网卡 IP 信息
ip addr add 192.168.0.1/24 dev eth0 # 设置 eth0 网卡 IP 地址
ip addr del 192.168.0.1/24 dev eth0 # 删除 eth0 网卡 IP 地址
路由管理
ip route list # 查看路由信息
ip route add 192.168.4.0/24 via 192.168.0.254 dev eth0 # 设置网段网关
ip route add default via 192.168.0.254 dev eth0 # 设置默认网关
ip route del 192.168.4.0/24 # 删除网段网关
ip route del default # 删除默认路由
三、CentOS 6.2 网络配置文件示例
网卡配置文件
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0" # 设备名
NM_CONTROLLED="yes" # 设备是否被 NetworkManager 管理
ONBOOT="no" # 开机是否启动
HWADDR="00:0C:29:59:E2:D3" # 硬件地址(MAC 地址)
TYPE=Ethernet # 类型
BOOTPROTO=none # 启动协议 {none|dhcp}
IPADDR=192.168.0.1 # IP 地址
PREFIX=24 # 子网掩码
GATEWAY=192.168.0.254 # 默认网关
DNS1=202.106.0.20 # 主 DNS
DOMAIN=202.106.46.151 # 辅助 DNS
UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 # 设备 UUID 编号
网络基础配置
# cat /etc/sysconfig/network
HOSTNAME=butbueatiful.com # 主机名
四、重要注意事项
1. DNS 配置防丢失
方法一:设置 PEERDNS
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Ethernet
PEERDNS=no # 防止 /etc/resolv.conf 被重写
方法二:在网卡配置中指定 DNS
DNS1=127.0.0.1
DNS2=8.8.8.8
2. 安全设置
保护重要配置文件不被篡改:
# 设置文件不可修改
chattr +i /etc/{resolv.conf,hosts}
# 需要修改时解除保护
chattr -i /etc/{resolv.conf,hosts}
3. 网络故障排除思路
- 检查配置文件:是否有书写及语法错误等
- 检查本机网络协议:
ping -c 3 127.0.0.1
- 检查本机网卡链路:
ping -c 3 192.168.0.1
(本机 IP 地址) - 检查网关:
ping -c 3 192.168.0.254
(网关 IP 地址) - 检查外部连通性:
ping -c 3 www.google.com.hk
- 检查硬件
通过以上完整的配置指南,您可以熟练地在 CentOS 6 系统中进行网络配置和故障排除。
© 转载需附带本文链接,依据 CC BY-NC-SA 4.0 发布。