当前位置: 首页 > 科技观察

如何在Ubuntu15.10上为单个网卡设置多个IP地址

时间:2023-03-22 11:53:21 科技观察

有时,您可能希望在网卡上使用多个IP地址。在这种情况下你会怎么做?买一个新的NIC并分配一个新的IP?不,没有必要(至少在小型网络中)。现在我们可以在Ubuntu系统中为一张网卡分配多个IP地址。想知道怎么做吗?跟着我往下读,不难。  此方法也适用于Debian及其衍生产品。  临时添加IP地址  首先,让我们找到网卡的IP地址。在我的Ubuntu15.10服务器版本中,我只使用一个网卡。  运行以下命令查找IP地址:sudoipaddr  示例输出:1:lo:mtu65536qdiscnoqueuestateUNKNOWNgroupdefaultlink/loopback00:00:00:00:00:00brd00:00:00:00:00:00inet127.0.0.1/8scopehostlovalid_lftforeverpreferred_lftforeverinet6::1/128scopehostvalid_lftforeverpreferred_lftforever2:enp0s3:mtu1500qdiscpfifo_faststateUPgroupdefaultqlen1000link/ether08:00:27:2a:03:4bbrdff:ff:ff:ff:ff:ffinet192.或sudoifconfig示例输出:enp0s3Linkencap:EthernetHWaddr08:00:27:2a:03:4binetaddr:192.168.1.103Bcast:192.168.1.255Mask:255.255.255.0inet6addr:fe80::a00:27ff:fe2a:34e/645ASTUMTUMETTRADCASTRA1:1droppedtradstra10overruns:0frame:0TXpackets:70errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RXbytes:21872(21.8KB)TXbytes:9666(9.6KB)loLinkencap:LocalLoop257sk.00.01.01etaddr:2inet6addr:::1/128BScope:HRUNUPLOOPTUOP:65536Metric:1RXpackets:217errors:0dropped:0overruns:0frame:0TXpackets:217errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:0RXbytesKB:38793(38.KB)(38.KB)  正如你在输出中看到的上面,我的网卡名称是enp0s3,它的IP地址是192.168.1.103。  现在让我们为网卡添加一个新的IP地址,比方说192.168.1.104。  打开您的终端并运行以下命令以添加额外的IP。sudoipaddradd192.168.1.104/24devenp0s3  使用命令查看新IP是否启用:  sudoipaddressshowenp0s3  样例输出:2:enp0s3:mtu1500qdiscpfifo_faststateUPgroupdefaultqlen1000link/ether08:00:27:2a:03:4ebrdff:ff:ff:ff:ff:ffinet192.168.1.103/24brd192.168.1.255scopeglobalenp0s3valid_lftforeverpreferred_lftforeverinet192.168.1.104/24scopeglobalsecondaryenp0s3valid_lftforeverpreferred_lftforeverinet6fe80::a00:27ff:fe2a:34e/64scopelinkvalid_lftforeverpreferred_lftforever  同样,您可以添加任意数量的IP地址。  让我们ping这个IP地址来验证。sudoping192.168.1.104  Sampleoutput:PING192.168.1.104(192.168.1.104)56(84)bytesofdata.64bytesfrom192.168.1.104:icmp_seq=1ttl=64time=0.901ms64bytesfrom192.1048.1.1.1=64time=0.571ms64bytesfrom192.168.1.104:icmp_seq=3ttl=64time=0.521ms64bytesfrom192.168.1.104:icmp_seq=4ttl=64time=0.524ms  太棒了,成功了!  要删除IP,只需要运行:sudoipaddrdel192.168.1。104/24devenp0s3  然后检查IP是否被删除。sudoipaddressshowenp0s3  样例输出:2:enp0s3:mtu1500qdiscpfifo_faststateUPgroupdefaultqlen1000link/ether08:00:27:2a:03:4ebrdff:ff:ff:ff:ff:ffinet192.168.1.103/24brd192.168.1.255scopeglobalenp0s3valid_lftforeverpreferred_lftforeverinet6fe80::a00:27ff:fe2a:34e/64scopelinkvalid_lftforeverpreferred_lftforever  可以看到没有了!  如您所知,这些设置在重启系统后将失效。那么如何设置才最有效呢?这也很简单。  添加***IP地址  Ubuntu系统的网卡配置文件为/etc/network/interfaces。  我们来看看上面文件的具体内容。sudocat/etc/network/interfaces  的示例输出:#Thisfiledescribesthenetworkinterfacesavailableonyoursystem#andhowtoactivatethem.Formoreinformation,seeinterfaces(5).source/etc/network/interfaces.d/*#Theloopbacknetworkinterfaceautoloifaceloinetloopback#Theprimarynetworkinterfaceautoenp0s3ifacetenp0如上面的输出所示sh如您所见,网卡启用了DHCP。  现在,让我们分配一个额外的地址,比如192.168.1.104/24。  编辑/etc/network/interfaces:sudonano/etc/network/interfaces  如下添加额外的IP地址。#Thisfiledescribesthenetworkinterfacesavailableonyoursystem#andhowtoactivatethem.Formoreinformation,seeinterfaces(5).source/etc/network/interfaces.d/*#Theloopbacknetworkinterfaceautoloifaceloinetloopback#Theprimarynetworkinterfaceautoenp0s3ifaceenp0s3inetdhcpifaceenp0s3inetstaticaddress192.168.1.104/24  保存并关闭文件。  Runthecommandbelowforthe更改无需重新启动即可生效。sudoifdownenp0s3&&sudoifupenp0s3  示例输出:KilledoldclientprocessInternetSystemsConsortiumDHCPClient4.3.1Copyright2004-2014InternetSystemsConsortium.Allrightsreserved.Forinfo,请访问https://www.isc.org/software/dhcp/ListeningonLPF/enp0s3/08:00:27:2a:03:4eSendingonLPF/08:08:4eSendingonLPF/08:08:00:27:2a:03:4eSendingonSocket/fallbackDHCPRELEASEonenp0s3to192.168.1.1port67(xid=0x225f35)InternetSystemsConsortiumDHCPClient4.3.1Copyright2004-2014InternetSystemsConsortium.Allrightsreserved.Forinfos/soft.porg/forinfo,pleasevisit/ListeningonLPF/enp0s3/08:00:27:2a:03:4eSendingonLPF/enp0s3/08:00:27:2a:03:4eSendingonSocket/fallbackDHCPDISCOVERonenp0s3to255.255.255.255port67interval3(xid=0xdfb94764)DHCPREQUESTof192.168.1.103onenp0s3to255.255.255.255port67(xid=0x6447b9df)DHCPOFFERof192。168.1.103from192.168.1.1DHCPACKof192.168.1.103from192.168.1.1boundto192.168.1.103--renewalin35146seconds.  注意:如果是远程连接服务器,将以上两条命令放在一行中非常重要,因为第一个命令会终止你的连接。这样您就可以保留您的ssh会话。  现在,让我们使用以下命令检查是否已添加新IP:sudoipaddressshowenp0s3  示例输出:2:enp0s3:mtu1500qdiscpfifo_faststateUPgroupdefaultqlen1000link/ether08:00:27:2a:03:4ebrdff:ff:ff:ff:ff:ffinet192.168.1.103/24brd192.168.1.255scopeglobalenp0s3valid_lftforeverpreferred_lftforeverinet192.168.1.104/24brd192.168.1.255scopeglobalsecondaryenp0s3valid_lftforeverpreferred_lftforeverinet6fe80::a00:27ff:fe2a:34e/64scopelinkvalid_lftforeverpreferred_lftforever  很好!WehaveaddedadditionalIP。  再次PingIP地址进行验证。sudoping192.168.1.104  Sampleoutput:PING192.168.1.104(192.168.1.104)56(84)bytesofdata.64bytesfrom192.168.1.104:icmp_seq=1ttl=64time=0.137ms64bytesfrom192.1048.1.1.1=64time=0.050ms64bytesfrom192.168.1.104:icmp_seq=3ttl=64time=0.054ms64bytesfrom192.168.1.104:icmp_seq=4ttl=64time=0.067ms  太好了!它工作正常。就是这样。  想知道如何为CentOS/RHEL/ScientificLinux/Fedora系统添加额外的IP地址,您可以点击下面的链接。  CentOS7如何给一个网卡分配多个IP地址  工作愉快!