linux 网卡IP地址,多IP配置

linux网卡的IP地址配置,以及单网卡绑定多个IP的配置方法

在网络中,我们都知道,IP,是唯一的,而且每台计算机的通讯,都是依靠 IP 的,下面来讲一下在 linux 里配置 IP 的方法,也就是配置网络的方法。

在 linux 里面,查看 IP 的方法,如下命令

ifconfig

其中,这个命令,即可以查看,也可以配置网卡 IP 。其常用的选项,在后台跟上设备名称,如 eth0 ,这样的,就只查看 eth0 这一块网卡的 IP 配置。

ifconfig eth0

ifconfig 直接执行,在默认的情况下,只会显示已经 UP 的网上,没有 UP 的,早不会显示。还有一个 -a 参数,这个参数,代表的是显示所有网上,不论是否激活 (UP)

激活一个网卡,(不论是否配置了 IP 地址)

ifconfig eth0 up

关闭一个网卡

ifconfig eth0 down

配置 IP 地址

ifconfig eth0 192.168.1.1
ifconfig eth0 192.168.1.1 netmask 255.255.255.224

配置 IP 这一块,netmask 可以写,也可以不写,不写,则是使用标准的子网掩码,默认情况下的,在使用 VLSM 的时候,这个 netmask 就显得很重要了。在最后面,还可以加上 up ,代表配置 IP 后立即激活,如下例:

ifconfig eth0 192.168.1.1 up
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up

单网卡配置多IP。

一般情况一下,一个网卡都是只分配的一个 IP 的,那么我们有多个 IP 需要配置,但是只有一块网卡,这种情况怎么办?

在 linux 里,单个网卡配置多 IP ,其实也很简单,就比如说 eth0 吧,配置的时候,需要在 eth0 后加加个 :0 代表第一个虚拟网卡,这是从 eth0 虚拟出来的,:1 代表 第二个,依此类推,看下在的例子吧

ifconfig eth0 192.168.1.1 up
ifconfig eth0:0 192.168.2.1 up
ifconfig eth0:1 192.168.3.1 up
ifconfig eth0:2 192.168.10.120 up

这样就可以配置多个 IP 了

添加默认网关

route add default gw 192.168.x.x

ifconfig 配置的 IP 地址,只是临时有效,如果系统重启,则失效,而永久生效,要写到配置文件里面。

在 RedHat \ CentOS 等系统,配置文件位于

/etc/sysysconfig/network-scripts/ifcfg-xxx

其中,ifcfg-xxx 为对应网卡的配置,如: ifcfg-eth0 使用 cat 查看一下安的内容

cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
TYPE=Ethernet
UUID=a912766c-5500-44c4-85da-09a38f1121c0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
HWADDR=00:0C:29:22:75:2A
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth0"

我这里是 CentOS 6 的系统,不同的系统,可能不太一样,但有和项最重根据,记住就好

DEVICE 代表的是设备名称,比如 eth0

ONBOOT 代表的是开机是否自动激活网卡,也就是说是否自动 up

BOOTPROTO 代表的是地址类型,有 DHCP 动态获取 (dhcp) ,也可以指定静态地址 (static)

IPADDR 代表的是静态地址的情况下,指定的 IP 地址是多少

NETMASK 子网掩码

GATEWAY 网关

HWADDR 网卡的 MAC 地址 (可以指定,也可以不指定)

这几个是常用的,没有特殊情况(比如桥接:bonding),写这几个就可以了,以下是一个配置文件:

cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.7.7
NETMASK=255.255.255.0
GATEWAY=192.168.7.254

PS:配置文件里, 等号 (=) 前面的大写,后面的小写,若要使用 dhcp 动态获取 IP 地址,只需要将 BOOTPROTO=dhcp 再注释掉 IPADDR \ NETMASK \ GATEWAY 这三行,就可以了

另外,对于多网卡的配置,只需要复制配置文件,然后更改 DEVICE=eth0:0 \ DEVICE=eth0:1 再写上相关的IP地址,即可以了,多 IP 的情况下,不要写多个网关

而对于 Debian \ Ubuntu 之类的 linux ,则网卡的配置文件要简单一些了,其配置文件位于:

/etc/network/interfaces

配置如下:其中以#开头的是注释,这里我就不写上了

auto lo
iface lo inet loopback

auto etho
inface eth0 inet static
      address 192.168.1.1
      netmask 255.255.255.0
      gateway 192.168.1.254

auto eth0:0
iface eth0:0 inet static
      192.168.10.189
      netmask 255.255.255.0

auto eth0:1
iface eth0:1 inet static
      address 192.168.12.12
      netmask 255.255.255.0

其中,auto 为自动启动网卡

iface 指定网卡设备,并指定类型,是动态还是静态,若要动态,则把 static 改为 dhcp 并注释掉 address \ netmask \ gateway 即可

至于 address 则是指定 IP 地址

netmask 指定子网掩码

gateway 指定网关

 

猜您喜欢