Linux 的网络配置基本上是通过修改几个配置文件来实现的虽然也可以用ifconfig来设置IP用route来配置默认网关用hostname来配置主机名但是重启后会丢失
下面是相关的配置文件
/ect/hosts 配置主机名和IP地址的对应对本机提供解析
/etc/nf 配置域名(在hosts内解析不到时此域名生效)
/etc/sysconfig/network 配置主机名和网关
/etc/sysconfig/networkscripts/ifcfgeth 配置IPMask等网络参数
一网卡配置
cat /etc/sysconfig/networkscripts/ifcfgeth
DEVICE=eth
ONBOOT=yes
BOOTPROTO=static
IPADDR=
NETMASK=
GATEWAY=
ifconfig eth netmask broadcast
ifconfig eth: netmask
ifconfig eth: netmask
ifconfig eth down
ifconfig eth up
二多网卡配置
cat /etc/sysconfig/networkscripts/ifcfgeth
DEVICE=eth
BOOTPROTO=static
IPADDR=
NETMASK=
ONBOOT=yes
cat /etc/sysconfig/networkscripts/ifcfgeth
DEVICE=eth
BOOTPROTO=static
IPADDR=
NETMASK=
ONBOOT=yes
vi /etc/rcd/rclocal
route add net / gw dev eth
route add net / gw dev eth
三网关配置
注意以下用命令设置的方式设置完后需要将命令加入到 /etc/rcd/rclocal 中否则重启后设置被自动清除!
在 /etc/sysconfig/networkscripts/ifcfgeth 中配置
GATEWAY=
在 /etc/sysconfig/network 中配置
cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=
GATEWAY=
用命令设置
如果只需要添加默认路由可以这样设置
route add default gw
route del default gw (可以删除默认路由用此方法改变后几分钟就可以生效)
如果两个网卡均需要网关可以这样设置
route add net / gw dev eth
route add net / gw dev eth
备注设置好路由或默认网关以后可以用命令查看
route n
netstat rn
route print (For windows)
四域名配置
cat /etc/nf
nameserver
五单网卡绑定多个IP
有时我们需要在一块网卡上配置多个IP我们还需要为eth配置IP 和
那么需要再在/etc/sysconfig/networkscripts/ 下新建两个配置文件
cat /etc/sysconfig/networkscripts/ifcfgeth:
DEVICE=eth:
BOOTPROTO=static
IPADDR=
NETMASK=
ONBOOT=yes
cat /etc/sysconfig/networkscripts/ifcfgeth:
DEVICE=eth:
BOOTPROTO=static
IPADDR=
NETMASK=
ONBOOT=yes
六多个网卡绑定成一块虚拟网卡
为了提供网络的高可用性我们可能需要将多块网卡绑定成一块虚拟网卡对外提供服务这样即使其中的一块物理网卡出现故障也不会导致连接中断
所谓bonding就是将多块网卡绑定同一IP地址对外提供服务可以实现高可用或者负载均衡当然直接给两块网卡设置同一IP地址是不可能的通过bonding虚拟一块网卡对外提供连接物理网卡的被修改为相同的MAC地址Kernels 及以后的版本均提供bonding模块以前的版本可以通过patch实现
比如我们可以将eth和eth绑定成虚拟网卡bond:
首先在/etc/sysconfig/networkscripts/下创建虚拟网卡bond的配置文件ifcfgbond:
cat /etc/sysconfig/networkscripts/ifcfgbond
DEVICE=bond
BOOTPROTO=none
BROADCAST=
IPADDR=
NETMASK=
NETWORK=
ONBOOT=yes
TYPE=Ethernet
GATEWAY=
USERCTL=no
然后分别修改eth和eth的配置文件
cat /etc/sysconfig/networkscripts/ifcfgeth
DEVICE=eth
BOOTPROTO=none
ONBOOT=yes
USERCTL=no
MASTER=bond
SLAVE=yes
cat /etc/sysconfig/networkscripts/ifcfgeth
DEVICE=eth
BOOTPROTO=none
ONBOOT=yes
USERCTL=no
MASTER=bond
SLAVE=yes
在/etc/nf 文件中添加如下内容(如果没有该文件则新建一个)
alias bond bonding
options bond miimon= mode= primary=eth
其中miimon=表示每ms检查一次链路连接状态如果不通则会切换物理网卡mode=表示主备模式也就是只有一块网卡是active的只提供失效保护如果mode=则是负载均衡模式的所有的网卡都是active还有其他一些模式很少用到primary=eth表示主备模式下eth为默认的active网卡
最后在/etc/rclocal中加入
modprobe bonding miimon= mode=