CentOS 加网卡
在现代网络环境中,服务器通常需要配置多个网卡来满足不同的网络需求,CentOS作为一种流行的Linux发行版,提供了灵活的网络配置选项,本文将详细介绍如何在CentOS系统中添加和管理网卡,包括物理网卡和虚拟网卡的配置。
一、物理网卡的添加与配置
1. 硬件安装
关机并安装网卡:确保服务器处于关机状态,打开机箱,找到合适的PCIe插槽,将新的网卡插入插槽中。
连接网络电缆:将网络电缆连接到新安装的网卡上。
开机:重新启动服务器。
2. 生成配置文件
查看当前网卡信息:使用命令ip addr
或ifconfig a
查看当前系统中的网卡信息,这一步是为了确认新网卡是否被系统识别。
ip addr 或者 ifconfig a
创建网卡配置文件:进入网络脚本目录,复制现有的网卡配置文件(例如ifcfgens33),并重命名为新网卡的文件名(例如ifcfgens37)。
cd /etc/sysconfig/networkscripts/ cp ifcfgens33 ifcfgens37
编辑配置文件:使用文本编辑器(如vim)编辑新网卡的配置文件,设置适当的参数,如IP地址、子网掩码、网关等。
vi ifcfgens37
示例:
TYPE="Ethernet" BOOTPROTO="static" DEFROUTE="yes" PEERDNS="yes" PEERROUTES="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_PEERDNS="yes" IPV6_PEERROUTES="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stableprivacy" NAME="ens37" UUID="31626d344a1f415d9d32685a47dc98ad" DEVICE="ens37" ONBOOT="yes" IPADDR=192.168.140.128/24 NETMASK=255.255.255.0 GATEWAY=192.168.140.1 DNS1=8.8.8.8 DNS2=114.114.114.114
重启网络服务:保存配置文件后,重启网络服务以应用更改。
systemctl restart network
验证配置:再次使用ip addr
或ifconfig a
命令验证新网卡的配置是否正确。
二、虚拟网卡的添加与配置
1. 使用nmcli命令行工具
查看现有网络连接:使用nmcli connection show
命令查看当前的网络连接。
nmcli connection show
添加新的网络连接:使用nmcli connection add
命令添加新的网络连接,添加一个名为“ens37”的新连接,类型为桥接。
nmcli connection add type bridge ifname ens37 conname ens37
配置桥接参数:使用nmcli connection modify
命令配置桥接参数。
nmcli connection modify ens37 bridge.stp no nmcli connection modify ens37 bridge.priority 0
启动新的网络连接:使用nmcli connection up
命令启动新的网络连接。
nmcli connection up ens37
2. 配置NAT模式
设置NAT规则:在CentOS中,可以使用iptables或firewalld来设置NAT规则,使虚拟机可以通过主机的网络连接访问外部网络。
设置iptables NAT规则 iptables t nat A POSTROUTINGING o ens33 j MASQUERADE iptables A FORWARD p udp dport 68 j ACCEPT iptables A FORWARD p udp d 255.255.255.255 dport 67 j ACCEPT echo 1 > /proc/sys/net/ipv4/ip_forward
持久化NAT规则:为了在系统重启后仍然有效,可以将上述规则添加到网络脚本或使用iptablessave和iptablesrestore命令。
保存iptables规则 iptablessave > /etc/sysconfig/iptables
3. 配置私有网络(如VMnet)
修改网络脚本:如果使用的是VMware的VMnet,可以在虚拟机设置中选择相应的VMnet适配器,然后在CentOS中配置对应的网络脚本。
vi /etc/sysconfig/networkscripts/ifcfgens38
示例:
TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="dhcp" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stableprivacy" NAME="ens38" UUID="25fab07dd65642cdbc07ea9190a21ba1" DEVICE="ens38" ONBOOT="yes"
重启网络服务:保存配置文件后,重启网络服务以应用更改。
systemctl restart network
三、常见问题及解决方案
1. 新网卡未被识别
检查硬件连接:确保网卡正确安装在PCIe插槽中,并且网络电缆连接正常。
检查BIOS设置:有些主板可能需要在BIOS中启用特定的网卡才能正常工作。
检查系统日志:使用dmesg | grep i eth
命令查看系统日志,看是否有关于网卡的错误信息。
dmesg | grep i eth
2. 网络配置不生效
检查配置文件语法:确保网卡配置文件中的语法正确,没有拼写错误或遗漏的参数。
重启网络服务:有时需要多次重启网络服务才能使配置生效,可以尝试停止然后重新启动网络服务。
systemctl stop network systemctl start network
检查防火墙设置:确保防火墙设置没有阻止新的网卡连接,可以使用systemctl stop firewalld
临时关闭防火墙进行测试。
systemctl stop firewalld
3. 网络性能问题
调整网卡参数:可以通过修改网卡配置文件中的高级参数来优化网络性能,例如调整TCP窗口大小、启用硬件校验和等。
在ifcfgens37中添加以下参数 HWADDR=00:0c:29:15:d2:c5 CHECKSUM_OFFLOAD=yes TSO=yes
使用专用驱动:某些高级网卡可能需要安装专用的驱动程序才能发挥最佳性能,可以参考网卡厂商提供的文档进行安装。
4. 双网卡绑定(Bonding)
配置网卡绑定:如果需要提高网络的可靠性和吞吐量,可以考虑配置网卡绑定(Bonding),安装必要的软件包。
yum install y ifenslave2.808.el7.x86_64
编辑网卡配置文件:在两个网卡的配置文件中添加SLAVE
参数,并创建一个主配置文件。
ifcfgens37 (主网卡) TYPE=Ethernet BOOTPROTO=static MASTER=ens37bond0 SLAVE=yes ... ifcfgens38 (从网卡) TYPE=Ethernet BOOTPROTO=static MASTER=ens37bond0 SLAVE=yes ... ifcfgens37bond0 (绑定接口) TYPE=Bond BOOTPROTO=static NAME=ens37bond0 ...
启动网卡绑定:重启网络服务以应用更改。
systemctl restart network
本文详细介绍了在CentOS系统中添加和管理网卡的过程,包括物理网卡和虚拟网卡的配置,通过本文的指导,您可以成功配置CentOS系统的双网卡,以满足不同的网络需求,本文还介绍了一些常见问题的解决方案,帮助您快速解决网络配置中遇到的问题,无论是物理机还是虚拟机,掌握这些技能都将大大提升您的网络管理能力。