CentOS 7 网关配置
CentOS 7是一款基于Red Hat Enterprise Linux的开源操作系统,广泛应用于服务器和企业级应用,本文将详细介绍如何在CentOS 7上配置网关,以确保网络连接和通信的正常进行。

一、基础知识
1. IP地址
定义:IP地址用于明确局域网中的一台主机编码。
类型:IPv4(例如192.168.1.1)和IPv6(:1)。
2. 网络地址(网段)
定义:网络地址标识一个网段,不能分配给主机。
示例:对于IPv4,子网掩码为255.255.255.0时,网段为192.168.1.0。

3. 网关地址
定义:网关地址是分配给路由器接口的IP地址,用于不同网段间的数据传输。
示例:PC1的IP地址为192.168.1.1,PC2的IP地址为192.168.1.2,它们的网关可以设为192.168.1.254。
二、配置步骤
1. 配置静态IP地址
方法一:使用命令行工具
查看网卡名和状态:ip addr
或ifconfig

编辑配置文件:vi /etc/sysconfig/networkscripts/ifcfgens33
- TYPE="Ethernet"
- PROXY_METHOD="none"
- BROWSER_ONLY="no"
- BOOTPROTO="static"
- DEFROUTE="yes"
- IPV4_FAILURE_FATAL="no"
- IPADDR="192.168.1.100"
- PREFIXO="24"
- GATEWAY="192.168.1.254"
- DNS1="8.8.8.8"
- NAME="ens33"
- UUID="你的UUID"
- DEVICE="ens33"
- ONBOOT="yes"
重启网络服务:systemctl restart network
方法二:使用nmtui图形化工具
打开nmtui工具:nmtui
编辑连接:选择“Edit a connection”,找到对应的网卡并编辑。
设置IPv4:选择“Manual”,添加IP地址、子网掩码、网关和DNS。
保存并重启网络服务。
2. 配置DNS
编辑文件:vi /etc/resolv.conf
- nameserver 8.8.8.8
- nameserver 8.8.4.4
永久修改:确保在/etc/sysconfig/networkscripts/ifcfgens33
中设置了DNS。
3. 配置默认网关
临时修改:route add default gw <网关IP>
永久修改:在/etc/sysconfig/network
中添加GATEWAY=<网关IP>
,例如GATEWAY=192.168.1.254
。
4. 高级配置:双网卡同网段双网关
场景描述:服务器有两块网卡,分别连接互联网和内网。
配置示例:
网卡1(互联网):ifcfgeno1
- TYPE="Ethernet"
- PROXY_METHOD="none"
- BOOTPROTO="static"
- DEFROUTE="yes"
- IPV4_FAILURE_FATAL="no"
- IPADDR="172.16.137.99"
- PREFIX="24"
- GATEWAY="172.16.137.254"
- DNS1="60.255.80.18"
- NAME="eno1"
- DEVICE="eno1"
- ONBOOT="yes"
网卡2(内网):ifcfgeno2
- TYPE="Ethernet"
- PROXY_METHOD="none"
- BOOTPROTO="static"
- DEFROUTE="yes"
- IPV4_FAILURE_FATAL="no"
- IPADDR="172.16.137.97"
- PREFIX="24"
- GATEWAY="172.16.137.1"
- DNS1="60.255.80.18"
- NAME="eno2"
- DEVICE="eno2"
- ONBOOT="yes"
添加路由:route add net 172.16.0.0 netmask 255.255.0.0 gw 172.16.137.1
三、测试与验证
1. 查看IP地址
- ip addr show
或
- ifconfig
2. 测试网络连接
- ping www.baidu.com
或
- ping 8.8.8.8
3. 查看路由表
- route n
或
- ip route show
四、常见问题及解决方案
Q1: 配置完成后无法访问外网?
A1: 确保防火墙和iptables已关闭或正确配置,执行以下命令关闭防火墙和清空iptables规则:
- systemctl stop firewalld
- systemctl stop iptables
- iptables F
- iptables X
- iptables F t nat
- iptables X t nat
- sysctl net.ipv4.ip_forward=1
确保默认网关配置正确。
Q2: 如何更改网卡名称?
A2: CentOS 7使用ens33
等名称代替传统的eth0
,如果需要更改,可以执行以下命令:
- vi /etc/sysconfig/networkscripts/ifcfgeno16777736
- #将NAME改为所需的名称,例如ens33
- NAME="ens33"
- #重启网络服务
- systemctl restart network
通过上述步骤,您可以在CentOS 7上成功配置网关,实现网络连接和通信,无论是单网卡还是多网卡环境,都可以通过相应的配置方法满足需求,了解常见问题的解决方案也能帮助您更高效地排除故障。