ifconfig eth0:x 192.198.6.x 向上

ifconfig eth0:x 192.198.6.x 向上

我輸入以下 ifconfig eth0:0 192.198.6.1 up ifconfig eth0:1 192.198.6.2 up ifconfig eth0:2 192.198.6.3 up

現在這兩個指令都沒有錯誤了。當我 ping 192.168.6.1 時,我收到了來自該 IP 的回覆。那麼這裡究竟發生了什麼事?

誰能解釋一下 eth0:0,eth0:1 等的意思?

上面的這些命令是否將多個位址分配給同一個作業系統?我正在使用Ubuntu

如果它為同一台機器分配多個 Ips,那麼這是否意味著託管一個 my-sql 伺服器,就像託管在四台不同的機器或具有多個 IP 位址的同一台機器上一樣?

答案1

同一台機器有多個 ip,Linux 能夠透過使用 IP 別名將多個 IP 位址對應到單一 NIC。

要設定 IP 別名,例如:

ifconfig eth0:0 192.198.5.2 netmask 255.255.255.0 up

這會將 IP 位址 192.198.5.2 指派給 eth0 作為 eth0 上的第一個別名(記為 eth0:0)。如果查看 ifconfig 的輸出,您將看到 eth0 的不同 IP 位址和 eth0:0 的另一個 IP 位址。

別名為 NetworkInterface:Number,例如 eth0:0、eth0:1、eth0:2 等。

ifcfg-ethX:Y在某些系統中,您可以簡單地在目錄中建立別名檔案(其中 X 是網路接口,Y 是別名) /etc/sysconfig/network-scripts/,它將在啟動/網路重新啟動時讀取。

該文件的內容與其他介面文件類似,例如:

DEVICE=eth0
ONBOOT=yes
IPADDR="192.198.5.2"
NETMASK="255.255.255.0"

在不使用這些網路腳本的系統上,只需在啟動腳本(通常是 /etc/rc.d/rc.local)中直接新增對 ifconfig 的呼叫即可。

答案2

參考你的mysql問題。兩個都。根據您的設定方式,您可以讓 mysql 監聽所有 4 個 IP 位址,或僅監聽一個。

大多數守護程式都可以選擇您希望它們偵聽的介面。

答案3

(除了Prix的回應:)使用ifcfg-ethX:Y檔案的方法在基於RedHat的系統(例如Fedora、CentOS等)下很流行。在基於 Debian 的系統(例如 Ubuntu)下,您將使用 /etc/network/interfaces 檔案中的條目。另外:您的設備識別碼需要指定虛擬介面。例子:

iface eth0 inet 靜態
  地址192.168.6.1
  網路遮罩 255.255.255.0
  網關192.168.6.254

iface eth0:1 inet 靜態
  地址192.168.6.2
  網路遮罩 255.255.255.0

iface eth0:2 inet 靜態
  地址192.168.6.3
  網路遮罩 255.255.255.0

如果您使用它來調出其他位址,請執行下列操作不是新增網關線路,因為您最終會得到多個預設路由,這可能會讓您的路由引擎感到困惑。

相關內容