solaris配置ip

Solaris操作系統的以太網卡(以下簡稱網卡)設置,是一個老生常談的話題。網上的相關資料也是汗牛充棟,數不勝數。但對剛剛接觸Solaris的朋友來說,最需要的大概是一篇簡明通俗、易讀易用的操作指南。鑑於此,本文將網卡設置過程中涉及的一些基本操作和常見問題,進行了一下梳理和歸納,同時輔以作者在Solaris 10下進行網卡設置的親身經歷,希望能爲讀者朋友提供一個入門級的參考。

  硬件環境:x86 PC,華碩主板,集成VIA rhine II Ethernet adapter

  操作系統:Solaris 10 1/06 x86

  爲使各位閱讀起來更加容易,本文將內容劃分爲《驅動程序安裝篇》、《網卡設置入門篇》、《網卡設置提高篇》三個部分。若文中有不當之處,希望大家批評指正。

  一. 驅動程序安裝篇

  網卡要正常工作,肯定少不了網卡驅動程序的支持。對於一些常見型號的網卡,Solaris 10已經把它們的驅動程序放在安裝包裏面了。安裝操作系統時會提示對網卡進行設置。如果你的網卡恰巧不在此列,那就只能自己動手豐衣足食了。

  1. 如何知道網卡型號

  1) 查看網卡上的標籤信息

  2) 在Windows的設備管理器中查看,或在命令行中執行ipconfig /all

  3) 如果是品牌機,在產品說明書中查看配置信息

  我的機器是自己攢的兼容機,網卡是主板上集成的,在Windows的設備管理器中看到的信息是VIA rhine II Fast Ethernet Adatper。

  .2. 如何判斷網卡在Solaris 10中是否有現成的驅動程序

  1) 去SUN公司的網站上去查,地址是:,點Networking。如果沒找到的話也不要灰心,點Next Page看看。

  2) 另一種方法是,在安裝Solaris 10的時候,如果安裝程序自始至終都沒有提示你進行網絡設置,那就應該是沒找到網卡的驅動程序。

  在安裝Solaris 10的過程中,沒有任何一個環節提示我對網卡進行設置。進入Solaris系統後,運行ifconfig -a,只有一個本地自環網絡lo0。看來只能自己安裝了。

  3. 下載驅動程序

  到哪裏去下載網卡的驅動程序?下面推薦幾個驅動程序的來源:

  1) 網卡廠家的網站

  2) http://Solaris-x86.org/software/drivers/

  3) http://homepage2.nifty.com/mrym3/taiyodo/eng/index.htm

  4) http://www.mydrivers.com/

  5) SUN的官方網站www.SUN.com

  6) 用搜索引擎去搜

  經過一番尋覓,我終於在下載到了VIA rhine II在Solaris下的驅動程序。是一個壓縮文件rh-2.0.1.tar.gz,裏邊既有編譯好的二進制驅動程序文件,同時包含源代碼。

  4. 將驅動程序複製到Solaris操作系統中

  由於網卡目前還不能工作,無法通過網絡上傳驅動程序文件。

  一般可使用如下三種存儲介質來將驅動程序文件複製到Solaris的文件系統中。

  1) CD/DVD

  2) 軟盤

  3) USB存儲設備

  我在Windows下用Nero軟件把rh-2.0.1.tar.gz刻錄到一張空白光盤上(文件只有163K,有點浪費)。接下來以root用戶登錄Solaris 10,把rh-2.0.1.tar.gz文件從光盤複製到Solaris硬盤上,解壓縮。

  # cp /cdrom/cdrom0/rh-2.0.1.tar.gz /tmp

  # gzip -dc rh-2.0.1.tar.gz | tar xvf -

  在/tmp目錄下生成一個rh-2.0.1目錄。驅動程序文件rh就位於obj子目錄下面。

  5. 安裝驅動程序

  網卡驅動程序有多種發佈方式,因而相應的安裝方法也不盡相同。

  1) pkg包:安裝通過pkg文件方式發佈的驅動程序,只需要執行一條命令就可以搞定了:

  # pkgadd -d .

  2) 安裝腳本:有的網卡驅動程序通過單獨的二進制文件方式發佈,同時提供安裝腳本和README文件。README裏面有具體的安裝方法。

  3) 無安裝腳本:需要使用最原始的驅動程序安裝方法,即使用add_drv命令來安裝。方法是,將驅動程序文件複製到/kernel/drv或/usr/kernel/drv目錄下,再執行# /usr/sbin/add_drv -n -v -i ,。其中的","可在# prtconf -pv的結果中找到。

  rh-2.0.1的安裝方式是第二種,有現成的安裝腳本文件add_drv.sh。我按照README裏面的提示,執行

  # cd /tmp/rh-2.0.1

  # /usr/ccs/bin/make install

  # ./add_drv.sh

  Driver (rh) installed.

  驅動程序安裝成功。

  6. 網卡命名規則

  Solaris使用唯一的設備名來標識每一塊物理網卡。網卡設備名的命名規則是即驅動程序名後面跟一個從0開始的數字。比如機器上裝有3塊均使用驅動程序iprb的網卡,則依次命名爲iprb0,iprb1,iprb2。

  按照這個規則,我的網卡設備名應該是rh0。敲入命令,查看當前已安裝驅動程序的網卡

  # dladm show-link

  rh0 type: legacy mtu: 1500 device: rh0

  果然有rh0。

 

 

  Solaris 10操作系統的以太網卡設置(二)--網卡設置入門篇 2006/03/21

  文/李凱

  二. 網卡設置入門篇

  上一篇我們介紹的是網卡驅動程序的安裝過程,併成功安裝了VIA rhine II網卡的驅動程序。本篇將以上一篇中安裝的網卡rh0爲例,對IP地址和子網掩碼等一些基本的網絡參數進行設置

  通常的設置方式有兩種,一是使用ifconfig命令,二是通過創建和修改相關配置文件。使用ifconfig命令,可以使設置立即生效,但設置是臨時的,每次系統重啓後,需要重新進行設置。而創建和修改配置文件,可保存設置,系統每次啓動時,會根據配置文件的內容自動對網卡進行設置

  1. 使用ifconfig命令對網卡進行設置

  1) 激活網卡(# ifconfig plumb up)

  激活網卡的意義在於將網卡驅動程序加載到Solaris系統的內核中,激活之後纔可以進一步對網卡進行操作。

  手動激活rh0,

  # ifconfig rh0 plumb up

  驗證結果,

  # ifconfig -a

  lo0: flags=2001000849mtu 8232 index 1

  inet 127.0.0.1 netmask ff000000

  rh0: flags=1000843mtu 1500 index 2

  inet 0.0.0.0 netmask 0

  ether 0:8:d:6e:8b:f1

  可以看到rh0已被激活,但還沒有分配地址。

  2) 分配地址

  網卡地址分配通常包括靜態分配和dhcp動態分配兩種方式。任選其一。

  a) 靜態分配地址(命令 # ifconfig <interface> <address> netmask <netmask>)

  把IP: 129.158.215.204 , netmask: 255.255.255.0分配給rh0,

  # ifconfig rh0 129.158.215.204 netmask 255.255.255.0

  驗證結果,

  # ifconfig rh0

  rh0: flags=1000843mtu 1500 index 2

  inet 129.158.215.204 netmask ffffff00 broadcast 129.158.215.255

  ether 0:8:d:6e:8b:f1

  IP和子網掩碼已生效。

  b) 通過dhcp方式分配地址(命令 # ifconfig dhcp )

  重新激活rh0,

  # ifconfig rh0 unplumb down

  # ifconfig rh0 plumb up

  通過dhcp方式獲得IP和子網掩碼,

  # ifconfig rh0 dhcp

  驗證結果,

  # ifconfig rh0

  rh0: flags=1004843mtu 1500 index 2

  inet 129.158.215.247 netmask ffffff00 broadcast 129.158.215.255

  ether 0:8:d:6e:8b:f1

  已自動獲取到IP和子網掩碼。

  2. 通過配置文件對網卡進行設置

  和網卡基本設置相關的配置文件放在/etc/inet和/etc目錄下,包括

  /etc/hosts -> /etc/inet/hosts (文件中的每一行記錄表示hostname和ip地址的對應關係)

  /etc/hostname.(文件內容和文件的擴展名構成hostname和interface設備名的對應關係)

  /etc/netmasks (文件中的每一行記錄表示和netmask的對應關係)

  /etc/dhcp.(dhcp)

  創建和修改配置文件後,需要重啓系統才能使設置生效。

  1) 分配地址

  同樣包括靜態分配和dhcp動態分配兩種方式。任選其一。

  a) 靜態分配地址(文件 /etc/hosts , /etc/netmask , /etc/hostname.)

  1> 自定義一個hostname,並指定IP地址

  # vi /etc/hosts

  加入一行記錄:129.158.215.204 myhostname loghost

  :x!保存退出。

  2> 定義子網掩碼

  # vi /etc/netmasks

  加入一行記錄:129.158.215.0 255.255.255.0

  :wq保存退出。

  3> 將自定義的hostname關聯到rh0

  # vi hostname.rh0

  加入一行記錄:myhostname

  :wq保存退出。

  b) 通過dhcp方式分配地址(文件 /etc/hostaname., /etc/dhcp.)

  1> 創建空文件hostname.rh0

  # touch /etc/hostname.rh0

  2> 創建文件dhcp.rh0

  # touch /etcdhcp.rh0

  需要的話還可以在該文件中填入超時時間(秒),比如:30

  2) 重啓系統

  # reboot

  3) 常見問題:

  在/etc/hosts文件中修改了IP地址,重啓後,發現機器的IP地址還是原來的,是怎麼回事?

  問題可能出在/etc/inet/ipnodes文件。該文件的語法跟/etc/hosts相同,但優先級高於/etc/hosts。如果/etc/inet/ipnodes文件中保留了原來的IP地址,那麼/etc/hosts中相同hostname的IP設置將被忽略。將ipnodes文件中的IP地址一行刪掉,或改成新的IP地址,重啓後,問題就消失了。

  3. sys-unconfig

  如果覺得使用ifconfig命令和手工修改配置文件太麻煩,可運行sys-unconfig命令,以交互方式對系統重新進行設置。執行

  # sys-unconfig

  重啓後,系統會提示對網卡進行設置,並將設置結果自動保存到配置文件中。

 

 

  Solaris 10操作系統的以太網卡設置(三)--網卡設置提高篇 2006/03/21

  文/李凱

  三. 網卡設置提高篇

  在上一篇裏,我們以網卡rh0爲例,設置了IP地址和子網掩碼等一些基本的網絡參數。本篇將在前一篇的基礎上,對網卡設置中涉及的路由、DNS、邏輯網卡等進一步進行設置

  1. 網關設置

  1) 添加網關

  a) 可以使用route命令添加缺省網關,即時生效

  # route add default <網關地址>

  b) 還可以將網關地址保存在/etc/defaultrouter中

  # vi /etc/defaultrouter

  在文件中加入網關的IP地址或hostname(必須在/etc/hosts中已經配置)

  :wq!保存退出

  # reboot

  2) 查看缺省網關

  # netstat -r

  2. dns設置

  1) 創建/etc/resolv.conf文件

  # vi /etc/resolv.conf

  將dns的IP地址填在文件中

  :wq保存退出。

  domain machinename

  nameserver 10.198.22.23

  2) 修改/etc/nsswitch.conf文件

  # vi /etc/nsswitch.conf

  找到"hosts: files"一行,在後面加dns,即修改爲

  hosts: files dns

  3) 重新plumb網卡或reboot

  4) 驗證dns是否生效

  # ping www.google.com

  或

  # nslookup www.google.com

  3. 域名設置

  1) 創建/etc/defaultdomain文件

  # vi /etc/defaultdomain

  在該文件中加入domainname,比如prc.SUN.com

  :wq保存退出

  2) 在/etc/hosts加入一行新的記錄(格式爲.)

  # vi /etc/hosts

  加入一行新的記錄,比如

  129.158.2.104 myhostname.prc.SUN.com

  :wq保存退出

  4. 邏輯網卡

  如果想爲一塊物理網卡設置多個IP地址,可通過添加邏輯網卡(或叫虛擬網卡)來實現。比如爲rh0增加一個邏輯地址129.158.215.207,與前面IP地址設置的方式和方法完全相同,網卡的名字爲rh0:1,如果添加更多的邏輯網卡,rh0:後面的數字依次增加。

 

 

 

 

 

********************************************************************************************

 

 

solaris單網卡配置多IP:
root@shrsa2 # ifconfig -a
lo0: flags=1000849 mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
bge0: flags=1000843 mtu 1500 index 2
inet 10.221.15.19 netmask ffffff80 broadcast 10.221.15.127
ether 0:14:4f:75:1c:a4

這裏只有一個可用物理網卡bge0,因爲有一個應用軟件在開發時與某個固定ip綁定,所以需要配置爽IP,但是隻有一個網卡,怎麼辦呢。

在win裏填加多個ip很方便,unix同樣可以。
ifconfig bge0:1 plumb
ifconfig bge0:1 211.136.159.199 netmask 255.255.255.0 up

此時ifconfig -a可以看到填加的IP了:
root@shrsa2 # ifconfig -a
lo0: flags=1000849 mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
bge0: flags=1000843 mtu 1500 index 2
inet 10.221.15.19 netmask ffffff80 broadcast 10.221.15.127
ether 0:14:4f:75:1c:a4
bge0:1: flags=1000843 mtu 1500 index 2
inet 211.136.159.199 netmask ffffff00 broadcast 211.136.159.255
root@shrsa2 #

需要注意的地方。bge0;0不能添加,只能從bge0:1--2---3---等。
如果需要刪除這個虛擬接口:
ifconfig bge0:1 unplumb
plumb是加載驅動的參數,plumb應該是卸載了吧!

相關的網絡參數配置文件有:
/etc/hostname.pcn0 #ip地址對了就可以
/etc/hosts #10.221.15.19 shrsa2 shrsa2. loghost
/etc/netmasks #這裏的內容一定要注意用網絡號和相對應的10進制掩碼錶示。
/etc/defaultrouter #網關地址

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章