linux 一个网卡配置多个IP

一、首先实现一个网卡配置成多个IP地址。

Linux的网络设备配置文件存放在/etc/sysconfig/network-scripts里面,对于以太网的第一个网络设备,配置文件名一般为 ifcfg-eth0 如果需要为第一个网络设备绑定多一个IP地址.

ifcfg-eth0文件的配置如下:

    DEVICE="eth0"

  IPADDR="192.168.0.1"

  NETMASK="255.255.255.0"

  ONBOOT="yes"

只需要在/etc/sysconfig/network-scripts目录里面复制一个名为ifcfg-eth0:0的文件,内容样例为:

  
  DEVICE="eth0:0"

  IPADDR="192.168.1.1"

  NETMASK="255.255.255.0"

  ONBOOT="yes"

  其中的DEVICE为设备的名称,IPADDR为此设备的IP地址,NETMASK为子网掩码,ONBOOT表示在系统启动时自动启动。

可以这样做:

#cd /etc/sysconfig/network-scripts/
#cp ifcfg-eth0 ifcfg-eth0:1
#vi ifcfg-eth0:1

    如果需要再绑定多一个IP地址,只需要把文件名和文件内的DEVICE中的eth0:x加一即可。LINUX最多可以支持255个IP别名。 

二、配置路由

1.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

192.168.0.0     *               255.255.255.0     U         0 0          0 eth0

由于是同一块网卡虚拟的两个IP地址所以不用添加新的路由系统会自动的装载路由表。

2.如果是两块网卡的情况需要进行路由的设定。

临时性的:

route add -net  192.168.0.0  netmask 255.255.255.0 gw 192.168.0.1

route add -net  192.168.1.0  netmask 255.255.255.0 gw 192.168.1.1

 

 

 

 

但重新启动后就会失效.因此在/etc/sysconfig/network-scripts/目录下建立文件。因为我们是做内网的路由,并且内网网卡为eth0,因此我们建立route-eth0文件如下:

 

[root@www network-scripts]# cat route-eth0

 

192.168.0.0/24 via 192.168.0.1 dev eth0

192.168.1.0/24 via 192.168.1.1 dev eth1  

 

[root@www network-scripts]# /etc/rc.d/init.d/network restart启动生效

 

三、启动IP转发功能使得LINUX能够转发数据包。

 

1.将/proc/sys/net/ipv4/ip_forward 文件内容置1


echo “1” > /proc/sys/net/ipv4/ip_forward


IP Forward 将立即生效,但重启动失效。


2.vi /etc/sysctl.conf


 net.ipv4.ip_forward=1


保证每次重启动后IP Forward 均生效。
四、进行测试

找两台计算机分别配置成192.168.0网段与192.168.1网段。如:192.168.0.2和192.168.1.2

当在一块网卡上模拟两块网卡的时候,启动IP转发不用配置路由两台机器立即能PING通。

在两块网卡上时需要如(二)中所示配置路由来完成数据包的转发。

你可能感兴趣的:(IT资料)