[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 系統管理 > FreeBSD > 正文
在FreeBSD中安裝雙網卡實例
http://www.eschool.com.cn/ 作者:meaculpa (2001-04-20 16:53:34)
   當我們使用FreeBSD作網關或防火牆時,會要求在系統中安裝兩塊網卡,分別跨越兩個網絡, 一塊卡用外部網絡,而另一塊用內部網絡。好了,就象大家知道的那樣,現在需要讓系 統支持這些新設備,而對網絡適配器,FreeBSD是通過定制內核來支持的。當然,首先要讓 內核了解設備所用的硬件資源,對使用PCI接口的網卡,我只能說,擁有高科技真是幸福, 因為這類網卡在PCI PnP BOIS的支持下,只要在內核中多添一個設備配置就可在新內核引導 時自動檢測並啟動;而對ISA的卡,就沒有這樣簡單了,不過只要去PnP用jumpless模式, 用卡所帶的設置程序設好適當的資源,就可以在內核中用相應的配置來通知系統在引導時按 這樣的資源來啟動設備。

  我們來看看具體步驟:

1、定制新內核以適應新設備 

  這裡有一個問題需要注意一下,眾所周知,定制內核至少需要在系統上安裝原代碼中的"內 核原代碼"(FreeBSD Kernel Sources)部分,先前沒有安裝的可以用 /stand/sysinstall添 加這部分。

  對PCI網卡,例如你用的是Realtek 8139,可以在內核配置文件中添加一行: 

  device de0 <---- 你原有的DC21040 Ethernet adapters 
  device rl0 <---- 新加入的Realtek 8139,因為是PCI卡,系統會自動檢測卡資源 

  對ISA網卡,例如你用的是NE2000兼容卡,同樣在內核配置文件中添加與已設定資源相符合的描述行:

  device de0 <---- 你原有的DC21040 Ethernet adapters 
  device ed0 at isa? port 0x300 net irq 3 iomem 0xd8000 vector edintr 

  上面第二行是新加入的NE2000兼容網卡,因為是ISA卡,所以一定要指定卡所用的資源以便 系統可以在引導時檢測到。可能你會問,如果用的都是同樣芯片類型的卡,該如何配置呢? 

  可以這樣做:

  device ed0 at isa? port 0x300 net irq 3 iomem 0xd8000 vector edintr
  device ed1 at isa? port 0x320 net irq 10 iomem 0xd8000 vector edintr 

  可以看到,有多個同樣類型的設備時,按照UNIX的編號習慣依次就是ed0、ed1……。不過, 在上面的配置中兩塊卡的BOOTROM資源會發生沖突,但不影響啟動,你可以根據情況用卡所 帶設置程序把它們適當設開即可。

  此時已經按要求定制好了新的內核配置,現在就可以按FreeBSD handbook中的描述把新內核 編譯並安裝好。編譯工作一切順利的話我們的系統就已經支持了新的網卡設備,接下來就是為新網卡配置相應的網絡接口。

2、添加新網絡接口 

  比較簡單直觀的方法是用/stand/sysinstall來對新設備配置新接口的一系列參數,當然BSD 的傳統方法是以修改相應的配置文件來達到目的的,編輯/etc/rc.conf: 

  hostname="example.host.net" 
  network_interfaces="ed0 ed1 lo0" 

                  ~~~在這裡加入新的網絡接口以便在引導時用面ifconfig配置的
                  參數進行初始化

  ifconfig_ed0="inet 192.168.0.1 netmask 255.255.255.0" #原有的網絡接口參數 
  ifconfig_ed1="inet 192.168.1.1 netmask 255.255.255.0" #新網絡接口參數
  defaultroute="xxx.xxx.xxx.xxx" #原有的網絡默認路由

好了,安裝雙網卡的工作就完成了,以可以根據具體使用情況自行配置NAT、GATEWAY等東東了。  (http://www.fanqiang.com)
    進入【UNIX論壇

相關文章

======
 

★  樊強制作 歡迎分享  ★