按照本教程了解如何在 Linux 中為接口創建虛擬/輔助 IP 地址。這允許您將多個 IP 地址分配給單個接口。
在 Linux 中的接口上創建虛擬/輔助 IP 地址
您可以為 Linux 中的接口臨時或永久創建虛擬/輔助 IP 地址。
為 Linux 接口創建臨時虛擬/輔助 IP 地址
要為 Linux 中的接口創建臨時虛擬/輔助 IP 地址,您可以使用以下內容: ip
, ifconfig
.
利用 ip
使用該命令為接口創建/添加輔助 IP 地址。請參見下面的示例。
本例中的服務器有一個名為 enp0s8
.
顯示接口的當前 IP 地址。
ip add show dev enp0s8
3: enp0s8: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:c4:23:c9 brd ff:ff:ff:ff:ff:ff inet 192.168.56.108/24 brd 192.168.56.255 scope global noprefixroute enp0s8 valid_lft forever preferred_lft forever inet6 fe80::d524:3777:b321:5ed/64 scope link noprefixroute valid_lft forever preferred_lft forever ,multicast,up,lower_up>
分配給接口的主 IP 地址是 192.168.56.108
.
假設您要臨時分配一個輔助 IP 地址。 192.168.56.109
, 利用 ip
命令;
ip addr add 192.168.56.109/24 br 192.168.56.255 dev enp0s8
這個 addr
什麼時候 br
是縮寫 address
什麼時候 broadcast
分別。
檢查輔助 IP 地址分配。
ip add show dev enp0s8
3: enp0s8: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:c4:23:c9 brd ff:ff:ff:ff:ff:ff inet 192.168.56.108/24 brd 192.168.56.255 scope global dynamic noprefixroute enp0s8 valid_lft 394sec preferred_lft 394sec inet 192.168.56.109/24 brd 192.168.56.255 scope global secondary enp0s8 valid_lft forever preferred_lft forever inet6 fe80::d524:3777:b321:5ed/64 scope link noprefixroute valid_lft forever preferred_lft forever ,multicast,up,lower_up>
如果您重新啟動網絡、關閉接口或重新啟動服務器,您將丟失分配的 IP 地址。
為 Linux 接口創建永久虛擬/輔助 IP 地址
在 CentOS 和類似的 RHEL 衍生產品上創建輔助 IP 地址。
使用 nmcli 命令創建輔助 IP 地址
CentOS 和類似的衍生產品上提供了一個簡單的 NetworkManager 命令行工具。 nmcli
.
默認情況下,此命令在 Ubuntu/Debian 系統上可能不可用。如果是這樣,如果您想使用它,請安裝網絡管理器包(network-manager
)。
首先檢查接口連接名稱。
nmcli con show
con
是縮寫 connection
.
樣本輸出;
NAME UUID TYPE DEVICE
enp0s8 e59e1c2f-bda2-4704-9f4a-67e8cce636d9 ethernet enp0s8
Wired connection 1 a7d294d4-05d9-3724-832e-6b80dc288a24 ethernet enp0s3
在這種情況下,將虛擬/輔助 IP 添加到接口。 enp0s8
連接名稱 enp0s8
.
這個可以用 nmcli
命令是:消息 plus(+)ipv4.addresses
.
nmcli con mod enp0s8 +ipv4.addresses 192.168.56.109/24
mod
是縮寫 modify
.
刪除並啟動界面。 我假設您直接從控制台登錄 而不是通過 ssh。
nmcli con down enp0s8 && nmcli con up enp0s8
檢查輔助 IP 地址分配。
ip add show dev enp0s8
3: enp0s8: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:c4:23:c9 brd ff:ff:ff:ff:ff:ff inet 192.168.56.108/24 brd 192.168.56.255 scope global noprefixroute enp0s8 valid_lft forever preferred_lft forever inet 192.168.56.109/24 brd 192.168.56.255 scope global secondary noprefixroute enp0s8 valid_lft forever preferred_lft forever inet6 fe80::d524:3777:b321:5ed/64 scope link noprefixroute valid_lft forever preferred_lft forever ,multicast,up,lower_up>
使用 nmcli 命令刪除輔助 IP 地址: minus(-)ipv4.addresses
.
nmcli con mod enp0s8 -ipv4.addresses 192.168.56.109/24
nmcli con down enp0s8 && nmcli con up enp0s8
使用 nmtui(網絡管理器 GUI)創建輔助 IP 地址
nmtui
如果您安裝了 Network Manager 軟件包,則可用。
發布 nmtui
從終端(您可以使用 Tab 鍵瀏覽設置);
nmtui
選擇 編輯鏈接 然後點擊 好的.
選擇要編輯的接口。在這種情況下 enp0s8
然後點擊 編輯;
向下滾動[IPV4 構成]點擊 添加 輸入您的 IP 地址。
然後點擊 好的 底部 > 返回 > 啟用連接 > 好的.
選擇一個接口以將其停用。
選擇接口並重新激活它。
選擇 返回 > 結束.
檢查 IP 地址分配。
ip add show dev enp0s8
ip add show dev enp0s8
3: enp0s8: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:c4:23:c9 brd ff:ff:ff:ff:ff:ff inet 192.168.56.108/24 brd 192.168.56.255 scope global noprefixroute enp0s8 valid_lft forever preferred_lft forever inet 192.168.56.109/24 brd 192.168.56.255 scope global secondary noprefixroute enp0s8 valid_lft forever preferred_lft forever inet6 fe80::d524:3777:b321:5ed/64 scope link noprefixroute valid_lft forever preferred_lft forever ,multicast,up,lower_up>
同樣,可以使用 nmcli 命令或直接從 nmtui 工具中刪除它。
在 Ubuntu 18.04/Ubuntu 20.04 系統上創建輔助 IP 地址
要在 Ubuntu 18.04/Ubuntu 20.04 系統上使用 netplan 創建永久 IP 地址並管理網絡接口,請執行以下步驟:
檢查接口的當前IP地址。
ip add show dev enp0s8
3: enp0s8: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:56:39:94 brd ff:ff:ff:ff:ff:ff inet 192.168.59.14/24 brd 192.168.59.255 scope global enp0s8 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe56:3994/64 scope link valid_lft forever preferred_lft forever ,multicast,up,lower_up>
接口的當前網絡規劃配置。
cat /etc/netplan/00-installer-config.yaml
network: ethernets: enp0s3: dhcp4: true enp0s8: dhcp4: no addresses: [192.168.59.14/24] routes: - to: 0.0.0.0/0 via: 192.168.59.1 metric: 101 nameservers: addresses: [8.8.8.8] version: 2
編輯配置文件以向接口添加輔助 IP 地址。
cp /etc/netplan/00-installer-config.yaml{,.old}
vim /etc/netplan/00-installer-config.yaml
更新行。
addresses: [192.168.59.14/24]
它可能看起來像這樣。
addresses: [192.168.59.14/24, 192.168.59.15/24]
配置如下所示:
network: ethernets: enp0s3: dhcp4: true enp0s8: dhcp4: no addresses: [192.168.59.14/24, 192.168.59.15/24] routes: - to: 0.0.0.0/0 via: 192.168.59.1 metric: 101 nameservers: addresses: [8.8.8.8] version: 2
應用配置更改。
netplan apply
檢查 IP 地址分配
ip add show dev enp0s8
在您的 Debian 系統上創建輔助 IP 地址
同樣,更新接口以添加輔助 IP 地址,如下所示:
示例接口配置。
cat /etc/network/interfaces
source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug enp0s3 iface enp0s3 inet dhcp auto enp0s8 iface enp0s8 inet static address 192.168.58.22 netmask 255.255.255.0 gateway 192.168.58.1 broadcast 192.168.58.255 dns-nameservers 8.8.8.8
添加輔助 IP 地址。
cp /etc/network/interfaces{,.old}
按如下方式更新您的配置
vim /etc/network/interfaces
source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug enp0s3 iface enp0s3 inet dhcp auto enp0s8 iface enp0s8 inet static address 192.168.58.22 netmask 255.255.255.0 gateway 192.168.58.1 broadcast 192.168.58.255 dns-nameservers 8.8.8.8 auto enp0s8:0 iface enp0s8:0 inet static address 192.168.58.23 netmask 255.255.255.0
查看添加的配置。
auto enp0s8:0
iface enp0s8:0 inet static
address 192.168.58.23
netmask 255.255.255.0
保存設置,退出並重新啟動網絡。
systemctl restart networking
檢查您的 IP 地址。
ip add show dev enp0s8
3: enp0s8: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:2b:b4:61 brd ff:ff:ff:ff:ff:ff inet 192.168.58.22/24 brd 192.168.58.255 scope global enp0s8 valid_lft forever preferred_lft forever inet 192.168.58.23/24 brd 192.168.58.255 scope global secondary enp0s8:0 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe2b:b461/64 scope link valid_lft forever preferred_lft forever ,multicast,up,lower_up>
這是在 Linux 的接口上創建虛擬/輔助 IP 地址的方法。
在 Linux 中使用 NMCLI 命令連接到 WiFi
為 OpenVPN 客戶端分配靜態 IP 地址
在 Ubuntu 20.04/18.04 上使用 Netplan 配置靜態 IP 地址