有时你也许想要给一个网卡多个地址。你该怎么做呢?另外买一个网卡来分配地址?在小型网络中其实不用这么做。我们现在可以在CentOS/RHEL 7中给一个网卡分配多个ip地址。想知道怎么做么?好的,跟随我,这并不难。

首先,让我们找到网卡的IP地址。在我的CentOS 7服务器中,我只使用了一个网卡。

用root特权运行下面的命令:


  1. ip addr

示例输出:


  1. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
  2. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  3. inet 127.0.0.1/8 scope host lo
  4. valid_lft forever preferred_lft forever
  5. inet6 ::1/128 scope host
  6. valid_lft forever preferred_lft forever
  7. 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
  8. link/ether 08:00:27:80:63:19 brd ff:ff:ff:ff:ff:ff
  9. inet 192.168.1.150/24 brd 192.168.1.255 scope global enp0s3
  10. valid_lft forever preferred_lft forever

如上所见,我的网卡名是enp0s3,ip地址是192.168.1.150。

如你所知,网卡的配置文件存储在 /etc/sysconfig/network-scripts/ 目录下。每个网卡的详细内容将会以不同的名字存储,比如ifcfg-enp0s3

让我们看下ifcfg-enp0s3的细节。


  1. cat /etc/sysconfig/network-scripts/ifcfg-enp0s3

示例输出:


  1. TYPE="Ethernet"
  2. BOOTPROTO="none"
  3. DEFROUTE="yes"
  4. IPV4_FAILURE_FATAL="no"
  5. IPV6INIT="yes"
  6. IPV6_AUTOCONF="yes"
  7. IPV6_DEFROUTE="yes"
  8. IPV6_FAILURE_FATAL="no"
  9. NAME="enp0s3"
  10. UUID="e9f9caef-cb9e-4a19-aace-767c6ee6f849"
  11. ONBOOT="yes"
  12. HWADDR="08:00:27:80:63:19"
  13. IPADDR0="192.168.1.150"
  14. PREFIX0="24"
  15. GATEWAY0="192.168.1.1"
  16. DNS1="192.168.1.1"
  17. IPV6_PEERDNS="yes"
  18. IPV6_PEERROUTES="yes"

好的,现在我们将在相同的子网中分配多个地址了。

编辑文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3


  1. vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

像下面那样加入额外的IP地址。


  1. TYPE="Ethernet"
  2. BOOTPROTO="none"
  3. DEFROUTE="yes"
  4. IPV4_FAILURE_FATAL="no"
  5. IPV6INIT="yes"
  6. IPV6_AUTOCONF="yes"
  7. IPV6_DEFROUTE="yes"
  8. IPV6_FAILURE_FATAL="no"
  9. NAME="enp0s3"
  10. UUID="933cdc9b-b383-4ddd-b219-5a72c69c9cf0"
  11. ONBOOT="yes"
  12. HWADDR="08:00:27:3F:AB:68"
  13. IPADDR0="192.168.1.150"
  14. IPADDR1="192.168.1.151"
  15. IPADDR2="192.168.1.152"
  16. PREFIX0="24"
  17. GATEWAY0="192.168.1.1"
  18. DNS1="192.168.1.1"
  19. IPV6_PEERDNS="yes"
  20. IPV6_PEERROUTES="yes"

如你所见,我已经加了两个IP地址:IPADDR1=”192.168.1.151″ & IPADDR2=”192.168.1.152″

类似地,你可以加入更多的ip地址。

最后,保存并退出文件。重启网络服务来使更改生效。


  1. systemctl restart network

现在,让我们检查是否已经加入了ip地址。


  1. ip addr

示例输出:


  1. : lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
  2. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  3. inet 127.0.0.1/8 scope host lo
  4. valid_lft forever preferred_lft forever
  5. inet6 ::1/128 scope host
  6. valid_lft forever preferred_lft forever
  7. 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
  8. link/ether 08:00:27:3f:ab:68 brd ff:ff:ff:ff:ff:ff
  9. inet 192.168.1.150/24 brd 192.168.1.255 scope global enp0s3
  10. valid_lft forever preferred_lft forever
  11. inet 192.168.1.151/24 brd 192.168.1.255 scope global secondary enp0s3
  12. valid_lft forever preferred_lft forever
  13. inet 192.168.1.152/24 brd 192.168.1.255 scope global secondary enp0s3
  14. valid_lft forever preferred_lft forever
  15. inet6 fe80::a00:27ff:fe3f:ab68/64 scope link
  16. valid_lft forever preferred_lft forever

如你所见,单个网卡已经有3个ip地址了。

让我们ping一下新增的IP地址:


  1. ping -c 4 192.168.1.151

示例输出:


  1. PING 192.168.1.151 (192.168.1.151) 56(84) bytes of data.
  2. 64 bytes from 192.168.1.151: icmp_seq=1 ttl=64 time=0.048 ms
  3. 64 bytes from 192.168.1.151: icmp_seq=2 ttl=64 time=0.075 ms
  4. 64 bytes from 192.168.1.151: icmp_seq=3 ttl=64 time=0.077 ms
  5. 64 bytes from 192.168.1.151: icmp_seq=4 ttl=64 time=0.077 ms
  6. --- 192.168.1.151 ping statistics ---
  7. 4 packets transmitted, 4 received, 0% packet loss, time 2999ms
  8. rtt min/avg/max/mdev = 0.048/0.069/0.077/0.013 ms


  1. ping -c 4 192.168.1.152

示例输出:


  1. PING 192.168.1.152 (192.168.1.152) 56(84) bytes of data.
  2. 64 bytes from 192.168.1.152: icmp_seq=1 ttl=64 time=0.034 ms
  3. 64 bytes from 192.168.1.152: icmp_seq=2 ttl=64 time=0.075 ms
  4. 64 bytes from 192.168.1.152: icmp_seq=3 ttl=64 time=0.073 ms
  5. 64 bytes from 192.168.1.152: icmp_seq=4 ttl=64 time=0.075 ms
  6. --- 192.168.1.152 ping statistics ---
  7. 4 packets transmitted, 4 received, 0% packet loss, time 2999ms
  8. rtt min/avg/max/mdev = 0.034/0.064/0.075/0.018 ms

如果你想要使用不同的子网,你要改变PREFIX0=24成不同的子网,比如 PREFIX1=16

比如,我想要添加一个A类地址(*比如10.0.0.1)到我的网卡中。


  1. TYPE="Ethernet"
  2. BOOTPROTO="none"
  3. DEFROUTE="yes"
  4. IPV4_FAILURE_FATAL="no"
  5. IPV6INIT="yes"
  6. IPV6_AUTOCONF="yes"
  7. IPV6_DEFROUTE="yes"
  8. IPV6_FAILURE_FATAL="no"
  9. NAME="enp0s3"
  10. UUID="933cdc9b-b383-4ddd-b219-5a72c69c9cf0"
  11. ONBOOT="yes"
  12. HWADDR="08:00:27:3F:AB:68"
  13. IPADDR0="192.168.1.150"
  14. IPADDR1="192.168.1.151"
  15. IPADDR2="192.168.1.152"
  16. IPADDR3="10.0.0.1"
  17. PREFIX0="24"
  18. PREFIX1=16
  19. GATEWAY0="192.168.1.1"
  20. DNS1="192.168.1.1"
  21. IPV6_PEERDNS="yes"
  22. IPV6_PEERROUTES="yes"

你可以看到我已经添加一个A类地址(10.0.0.1)并且前缀是16。

保存并退出文件。重启网络服务,接着,ping新增的地址:


  1. ping -c 4 10.0.0.1

示例输出:


  1. PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
  2. 64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=0.097 ms
  3. 64 bytes from 10.0.0.1: icmp_seq=2 ttl=64 time=0.073 ms
  4. 64 bytes from 10.0.0.1: icmp_seq=3 ttl=64 time=0.074 ms
  5. 64 bytes from 10.0.0.1: icmp_seq=4 ttl=64 time=0.075 ms
  6. --- 10.0.0.1 ping statistics ---
  7. 4 packets transmitted, 4 received, 0% packet loss, time 3000ms
  8. rtt min/avg/max/mdev = 0.073/0.079/0.097/0.014 ms

相似地,你可以添加不同的网关。

就是这样。

在CentOS 7上给一个网卡分配多个IP地址的更多相关文章

  1. CentOS 7 救援模式启用网卡及重新获取IP地址

    重新自动获取IP地址命令: dhclient 启用网卡命令 ifconfig ens33 up https://blog.csdn.net/hongmin118/article/details/782 ...

  2. windows 2003一个网卡绑定多个IP地址

    1.打开“网络连接”,选中需要添加多个IP的“本地连接”-->右键-->“属性”: 2.从“常规”中找到“Internet 协议(TCP/IP)属性”: 3.选择手动设置IP地址.网关.掩 ...

  3. CentOS7 一个网卡配置多个IP地址

    1.给网卡p8p1新创建配置文件(复制原来的p8p1,修改IP地址即可) ifcfg-p8p1:0 vim  /etc/sysconfig/network-scripts/ifcfg-p8p1:0 D ...

  4. 关于linux Centos 7一个网卡配置多个IP的方法

    有时我们在工作中,会遇到一个网卡配置多个ip的情况,尤其是在linux服务器方面的应用教多 于是笔者将其配置过程整理如下,希望能帮到遇到同样问题的朋友,这里以vmware虚拟机下的Centos 7为例 ...

  5. centos linux系统日常管理复习 CPU物理数逻辑核数,iftop ,iotop ,sar ,ps,netstat ,一网卡多IP,mii-tool 连接,ethtool速率,一个网卡配置多个IP,mii-tool 连接,ethtool速率 ,crontab备份, 第十八节课

    centos linux系统日常管理复习 物理CPU和每颗CPU的逻辑核数,uptime ,w,vmstat,iftop ,iotop ,sar ,ps,netstat ,一个网卡配置多个IP,mii ...

  6. linux下一个网卡配置多个ip【虚拟ip】

    Linux下配置网卡ip别名何谓ip别名?用windows的话说,就是为一个网卡配置多个ip.什么场合增加ip别名能派上用场?布网需要.多ip访问测试.特定软件对多ip的需要...and so on. ...

  7. 虚拟IP---Linux下一个网卡配置多个IP

    转:http://blog.csdn.net/turkeyzhou/article/details/16971225 Linux下配置网卡ip别名何谓ip别名?用windows的话说,就是为一个网卡配 ...

  8. Linux中一个网卡含有多个IP,将从IP升级为主IP的方法

    今天在查看虚拟机的时候,发现某一网卡含有多个IP地址: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fas ...

  9. linux系统单网卡绑定多个IP地址

    说明: 单网卡绑定两个IP地址,电信和联通,目的:是为了当电信出故障联通正常使用. 系 统 IP地址 子网掩码 网关 CentOS 6.3_64bit eth0:116.18.176.19 255.2 ...

随机推荐

  1. expect脚本

    #!/bin/bash # Filename: main.sh usage(){ echo "scp file :./main.sh scp sourcefile destfile" ...

  2. 制作C/C++动态链接库(dll)若干注意事项

    一.C\C++ 运行时库编译选项简单说明 问题:我的dll别人没法用 运行时库是个很复杂的东西,作为开发过程中dll制作需要了解的一部分,这里主要简单介绍一下如何选择编译选项. 在我们的开发过程中时常 ...

  3. CSS3 绘制360安仔小精灵[原创]

    Css3图形通常由矩形,圆形,椭圆,三角形,梯形等组合而成. 矩形,为display:block的块级元素设定宽高,便能实现, 圆角矩形,椭圆,圆形,则通过border-radius 属性来得到. 圆 ...

  4. 【Django】Django命令(Manager.py)

    django-admin.py startproject mysite 该命令在当前目录创建一个 mysite 目录. django-admin.py这个文件在C:\Python27\Lib\site ...

  5. python 循环技巧

    原文地址:http://docs.pythontab.com/python/python3.4/datastructures.html#tut-tuples 在字典中循环时,关键字和对应的值可以使用  ...

  6. 关于Office 2013的几个问题

    最近在阅读一些pdf的材料,想对其中做一些批注,但是PDF文档做批准比较麻烦,而且市场上的几个pdfToWord也不是很好用. 偶然的机会发现,使用office2013可以直接打开pdf文件,所以赶紧 ...

  7. SqlServer 全局变量

    1.@@ERROR 返与@@ERROR 近语句错误码局限于DML语句select语句执行现错误则返等于0错误码没错则返0通使用判断语句没执行功 -- Create Schema if not one ...

  8. hdu 1533 Going Home 最小费用最大流

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1533 On a grid map there are n little men and n house ...

  9. Hibernate联合主键映射

    1.联合主键的映射规则 1) 类中的每个主键属性都对应到数据表中的每个主键列. Hibernate要求具有联合主键的实体类实现Serializable接口,并且重写hashCode与equals方法, ...

  10. [工作积累] Android: Hide Navigation bar 隐藏导航条

    https://developer.android.com/training/system-ui/navigation.html View decorView = getWindow().getDec ...