在 Solaris 10 以 IPMP 簡易配置網卡的 Virtual IP

這次的實作要把本來只有一個實體 IP 的 Solaris 10 的機器改成兩個實體 IP 加上共用一個對外的虛擬 IP,實際的配置將如下:在這個實作中,我們大致上要改動到以下幾個檔案:/etc/hosts, /etc/hostname.bge0, /etc/hostname.bge1, /etc/defaultrouter,其中 bge0 與 bge1 是因為本次的實作機器為 Netra 210,所以網卡的部分請自行依據機型而變。
原配置:
bge0: 10.15.25.43

新配置:
bge0:10.15.25.31
bge1:10.15.25.32
Virtual IP: 10.15.25.43
root@KHCFEMS01 # uname -a
SunOS KHCFEMS01 5.10 Generic_137137-09 sun4u sparc SUNW,Netra-210
root@KHCFEMS01 # cat /etc/release
Solaris 10 10/08 s10s_u6wos_07b SPARC
Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
Use is subject to license terms.
Assembled 27 October 2008
當然這裡的設定也有幾個限制,首先是兩塊網卡要能提供同樣的工作模式,再來是所有設定的 IP 要在同一個網段之內,而且在這網段內要有其他的機器或設備存在,通常是 GW 啦,可以設置在 defaultrouter 內;當設定完之後,系統會不斷發出 ICMP 的 echo request 封包給同網路的 GW,應該會得到 ICMP Echo reply,另外還會同時監控網卡上有沒有 RUNNING 的存在 (就是用 ifconfig -a 時會在 <> 看到的),這兩項測試都 OK 的話,就判定網卡是 OK 的;任一項失敗,就判定網卡是 nOK 的。(這個最後我們再用snoop來測試一下就知道)

接下來就是開始設定了,首先編輯一下 /etc/hosts:
root@KHCFEMS01 # vi /etc/hosts
#
# Internet host table
#
127.0.0.1 localhost
10.15.25.43 KHCFEMS01 khcfems01 loghost
10.15.25.44 KHCFEMS02 khcfems02
10.15.25.31 KHCFEMS01_bge0 khcfems01_bge0
10.15.25.32 KHCFEMS01_bge1 khcfems01_bge1
10.15.25.33 KHCFEMS02_bge0 khcfems02_bge0
10.15.25.34 KHCFEMS02_bge1 khcfems02_bge1
接著我們啟動 bge1 的網卡:
1. 未啟動之前的現狀:
2. 啟動後的狀態:接著我們要編輯 /etc/hostname.bge0 與 /etc/hostname.bge1:
再來是編輯一下 /etc/defaultrouter 和 /etc/netmasks 囉:最後,用 init 6 重新開機一下吧~

重開完之後用 ifconfig -a 看一下網卡的狀態:接著我們用 snoop 來看一下封包吧:
P.S.1. 注意到網卡中被 <> 括起來的部分了嗎:
UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER
有 RUNNING 而且 ping 的到 GW 才有機會帶起 Virtual 的 Interface 喔!另外,NOFAILOVER 就是現在 IPMP group 的狀態啦。

P.S.2. 可以看到已經有一個新的 bge0:1 被帶起來了,而其對外的 Virtual IP 也是我們設定的 10.15.25.43 囉~

以上,報告完畢!
2 Responses
  1. Unknown Says:

    洋蔥爸您好,

    小弟初碰solaris,想請教一下IPMP的功用及優缺點?

    謝謝!

    Paul


  2. Unknown Says:

    洋蔥爸您好,

    小弟初碰solaris,想請教一下IPMP的功用及優缺點?

    謝謝!

    Paul