如何在Ubuntu系統(tǒng)中添加一個(gè)輔助IP地址
Linux 管理員應(yīng)該意識(shí)到這一點(diǎn),因?yàn)檫@是一項(xiàng)例行任務(wù)。很多人想知道為什么我們需要在服務(wù)器中添加多個(gè) IP 地址,以及為什么我們需要將它添加到單塊網(wǎng)卡中?我說的對(duì)嗎?
你可能也會(huì)有類似的問題:在 Linux 中如何為單塊網(wǎng)卡分配多個(gè) IP 地址?在本文中,你可以得到答案。
當(dāng)我們對(duì)一個(gè)新服務(wù)器進(jìn)行設(shè)置時(shí),理想情況下它將有一個(gè) IP 地址,即服務(wù)器主 IP 地址,它與服務(wù)器主機(jī)名對(duì)應(yīng)。
我們不應(yīng)在服務(wù)器主 IP 地址上托管任何應(yīng)用程序,這是不可取的。如果要在服務(wù)器上托管任何應(yīng)用程序,我們應(yīng)該為此添加輔助 IP。
這是業(yè)界的***實(shí)踐,它允許用戶安裝 SSL 證書。大多數(shù)系統(tǒng)都配有單塊網(wǎng)卡,這足以添加額外的 IP 地址。
我們可以在同一個(gè)接口上添加 IP 地址,或者在同一設(shè)備上創(chuàng)建子接口,然后在其中添加 IP。默認(rèn)情況下,一直到 Ubuntu 14.04 LTS,接口給名稱為 ethX (eth0),但是從 Ubuntu 15.10 之后網(wǎng)絡(luò)接口名稱已從 ethX 更改為 enXXXXX(對(duì)于服務(wù)器是 ens33,桌面版是 enp0s3)。
在本文中,我們將教你如何在 Ubuntu 上執(zhí)行此操作,并且衍生到其它發(fā)行版(to 校正:這句自己加的)。
注意:別在 DNS 詳細(xì)信息后添加 IP 地址。如果是這樣,DNS 將無法正常工作。
如何在 Ubuntu 14.04 LTS 中添加臨時(shí)輔助 IP 地址
在系統(tǒng)中添加 IP 地址之前,運(yùn)行以下任一命令即可驗(yàn)證服務(wù)器主 IP 地址:
# ifconfig或# ip addr# ip addreth0 Link encap:Ethernet HWaddr 08:00:27:98:b7:36inet addr:192.168.56.150 Bcast:192.168.56.255 Mask:255.255.255.0inet6 addr: fe80::a00:27ff:fe98:b736/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:4 errors:0 dropped:0 overruns:0 frame:0TX packets:105 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:902 (902.0 B) TX bytes:16423 (16.4 KB)eth1 Link encap:Ethernet HWaddr 08:00:27:6a:cf:d3inet addr:10.0.3.15 Bcast:10.0.3.255 Mask:255.255.255.0inet6 addr: fe80::a00:27ff:fe6a:cfd3/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:80 errors:0 dropped:0 overruns:0 frame:0TX packets:146 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:8698 (8.6 KB) TX bytes:17047 (17.0 KB)lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:25 errors:0 dropped:0 overruns:0 frame:0TX packets:25 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1RX bytes:1730 (1.7 KB) TX bytes:1730 (1.7 KB)
如我所見,服務(wù)器主 IP 地址是 192.168.56.150,我將下一個(gè) IP 192.168.56.151 作為輔助 IP,使用以下方法完成:
# ip addr add 192.168.56.151/24 broadcast 192.168.56.255 dev eth0 label eth0:1
輸入以下命令以檢查新添加的 IP 地址。如果你重新啟動(dòng)服務(wù)器,那么新添加的 IP 地址會(huì)消失,因?yàn)槲覀兊?IP 是臨時(shí)添加的。
# ip addr1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever2: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 08:00:27:98:b7:36 brd ff:ff:ff:ff:ff:ffinet 192.168.56.150/24 brd 192.168.56.255 scope global eth0valid_lft forever preferred_lft foreverinet 192.168.56.151/24 brd 192.168.56.255 scope global secondary eth0:1valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fe98:b736/64 scope linkvalid_lft forever preferred_lft forever3: eth1: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 08:00:27:6a:cf:d3 brd ff:ff:ff:ff:ff:ffinet 10.0.3.15/24 brd 10.0.3.255 scope global eth1valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fe6a:cfd3/64 scope linkvalid_lft forever preferred_lft forever
如何在 Ubuntu 14.04 LTS 中添加***輔助 IP 地址
要在 Ubuntu 系統(tǒng)上添加***輔助 IP 地址,只需編輯 /etc/network/interfaces 文件并添加所需的 IP 詳細(xì)信息。
# vi /etc/network/interfaces
# vi /etc/network/interfaces# The loopback network interfaceauto loiface lo inet loopback# The primary network interfaceauto eth0iface eth0 inet staticaddress 192.168.56.150netmask 255.255.255.0network 192.168.56.0broadcast 192.168.56.255gateway 192.168.56.1auto eth0:1iface eth0:1 inet staticaddress 192.168.56.151netmask 255.255.255.0
保存并關(guān)閉文件,然后重啟網(wǎng)絡(luò)接口服務(wù)。
# service networking restart或# ifdown eth0:1 && ifup eth0:1
驗(yàn)證新添加的 IP 地址:
# ifconfigeth0 Link encap:Ethernet HWaddr 08:00:27:98:b7:36inet addr:192.168.56.150 Bcast:192.168.56.255 Mask:255.255.255.0inet6 addr: fe80::a00:27ff:fe98:b736/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:5 errors:0 dropped:0 overruns:0 frame:0TX packets:84 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:962 (962.0 B) TX bytes:11905 (11.9 KB)eth0:1 Link encap:Ethernet HWaddr 08:00:27:98:b7:36inet addr:192.168.56.151 Bcast:192.168.56.255 Mask:255.255.255.0UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1eth1 Link encap:Ethernet HWaddr 08:00:27:6a:cf:d3inet addr:10.0.3.15 Bcast:10.0.3.255 Mask:255.255.255.0inet6 addr: fe80::a00:27ff:fe6a:cfd3/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:4924 errors:0 dropped:0 overruns:0 frame:0TX packets:3185 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:4037636 (4.0 MB) TX bytes:422516 (422.5 KB)lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
如何在 Ubuntu 16.04 LTS 中臨時(shí)添加輔助 IP 地址
正如本文開頭所述,網(wǎng)絡(luò)接口名稱從 Ubuntu 15.10 就開始從 ‘ethX’ 更改為 ‘enXXXX’ (enp0s3),所以,替換你的接口名稱。
在執(zhí)行此操作之前,先檢查系統(tǒng)上的 IP 信息:
# ifconfig或# ip addrenp0s3: flags=4163 mtu 1500inet 192.168.56.201 netmask 255.255.255.0 broadcast 192.168.56.255inet6 fe80::a00:27ff:fe97:132e prefixlen 64 scopeid 0x20ether 08:00:27:97:13:2e txqueuelen 1000 (Ethernet)RX packets 7 bytes 420 (420.0 B)RX errors 0 dropped 0 overruns 0 frame 0TX packets 294 bytes 24747 (24.7 KB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0enp0s8: flags=4163 mtu 1500inet 10.0.3.15 netmask 255.255.255.0 broadcast 10.0.3.255inet6 fe80::344b:6259:4dbe:eabb prefixlen 64 scopeid 0x20ether 08:00:27:12:e8:c1 txqueuelen 1000 (Ethernet)RX packets 1 bytes 590 (590.0 B)RX errors 0 dropped 0 overruns 0 frame 0TX packets 97 bytes 10209 (10.2 KB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73 mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10loop txqueuelen 1000 (Local Loopback)RX packets 325 bytes 24046 (24.0 KB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 325 bytes 24046 (24.0 KB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
如我所見,服務(wù)器主 IP 地址是 192.168.56.201,所以,我將下一個(gè) IP 192.168.56.202 作為輔助 IP,使用以下命令完成。
# ip addr add 192.168.56.202/24 broadcast 192.168.56.255 dev enp0s3
運(yùn)行以下命令來檢查是否已分配了新的 IP。當(dāng)你重啟機(jī)器時(shí),它會(huì)消失。
# ip addr1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever2: enp0s3: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 08:00:27:97:13:2e brd ff:ff:ff:ff:ff:ffinet 192.168.56.201/24 brd 192.168.56.255 scope global enp0s3valid_lft forever preferred_lft foreverinet 192.168.56.202/24 brd 192.168.56.255 scope global secondary enp0s3valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fe97:132e/64 scope linkvalid_lft forever preferred_lft forever3: enp0s8: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 08:00:27:12:e8:c1 brd ff:ff:ff:ff:ff:ffinet 10.0.3.15/24 brd 10.0.3.255 scope global dynamic enp0s8valid_lft 86353sec preferred_lft 86353secinet6 fe80::344b:6259:4dbe:eabb/64 scope linkvalid_lft forever preferred_lft forever
如何在 Ubuntu 16.04 LTS 中添加***輔助 IP 地址
要在 Ubuntu 系統(tǒng)上添加***輔助 IP 地址,只需編輯 /etc/network/interfaces 文件并添加所需 IP 的詳細(xì)信息。
我們不應(yīng)該在 dns-nameservers 行之后添加輔助 IP 地址,因?yàn)樗粫?huì)起作用,應(yīng)該以下面的格式添加 IP 詳情。
此外,我們不需要添加子接口(我們之前在 Ubuntu 14.04 LTS 中的做法):
# vi /etc/network/interfaces# interfaces(5) file used by ifup(8) and ifdown(8)auto loiface lo inet loopback# The primary network interfaceauto enp0s3iface enp0s3 inet staticaddress 192.168.56.201netmask 255.255.255.0iface enp0s3 inet staticaddress 192.168.56.202netmask 255.255.255.0gateway 192.168.56.1network 192.168.56.0broadcast 192.168.56.255dns-nameservers 8.8.8.8 8.8.4.4dns-search 2daygeek.local
保存并關(guān)閉文件,然后重啟網(wǎng)絡(luò)接口服務(wù):
# systemctl restart networking或# ifdown enp0s3 && ifup enp0s3
運(yùn)行以下命令來檢查是否已經(jīng)分配了新的 IP:
# ip addr1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever2: enp0s3: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 08:00:27:97:13:2e brd ff:ff:ff:ff:ff:ffinet 192.168.56.201/24 brd 192.168.56.255 scope global enp0s3valid_lft forever preferred_lft foreverinet 192.168.56.202/24 brd 192.168.56.255 scope global secondary enp0s3valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fe97:132e/64 scope linkvalid_lft forever preferred_lft forever3: enp0s8: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 08:00:27:12:e8:c1 brd ff:ff:ff:ff:ff:ffinet 10.0.3.15/24 brd 10.0.3.255 scope global dynamic enp0s8valid_lft 86353sec preferred_lft 86353secinet6 fe80::344b:6259:4dbe:eabb/64 scope linkvalid_lft forever preferred_lft forever
讓我來 ping 一下新 IP 地址:
# ping 192.168.56.202 -c 4PING 192.168.56.202 (192.168.56.202) 56(84) bytes of data.64 bytes from 192.168.56.202: icmp_seq=1 ttl=64 time=0.019 ms64 bytes from 192.168.56.202: icmp_seq=2 ttl=64 time=0.087 ms64 bytes from 192.168.56.202: icmp_seq=3 ttl=64 time=0.034 ms64 bytes from 192.168.56.202: icmp_seq=4 ttl=64 time=0.042 ms--- 192.168.56.202 ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 3068msrtt min/avg/max/mdev = 0.019/0.045/0.087/0.026 ms























