[轉]網絡基本功12:細說Linux網絡配置(上)

網絡基本功(十二):細說Linux網絡配置(上)

本文由Zhang_Jiawen發表於Dell Technology"網絡基本功"

如有侵犯版權,還請這位頭像萌萌的大姐姐前輩聯繫我商討刪帖,道歉,賠償,下跪等事宜.

基本配置步驟

將一臺設備添加到本地網絡的基本步驟包括:

  • 指定唯一的IP地址與主機名。
  • 確保啓動時正確配置網絡接口。
  • 創建默認路由。
  • 指定DNS域名服務器以使設備能夠連接到網絡其他部分。

指定主機名與IP地址:

使用/etc/hosts文件是將設備名映射到IP地址的最簡單的方式,每一行以IP地址開始,跟隨識別到的各種符號名:

Image
Image

由於/etc/hosts僅包括本地映射而且必須維護在每一臺客戶端設備,所以最好保存那些需要在啓動時映射的信息(即:主機本身,默認網關,以及域名服務器)。

可使用hostname命令爲設備指定主機名。該命令通常在啓動腳本中運行,腳本中包含從配置文件讀取的主機名。

ifconfig:配置網絡接口:

ifconfig打開或關閉網絡接口,設置IP地址與子網掩碼,以及其他選項和參數。通常在啓動時通過命令行從配置文件中讀取參數來運行,但也可以手動運行以做修改。

ifconfig命令格式如下: ifconfig interface [family] address options…

例如: ifconfig eth0 192.168.1.13 netmask 255.255.255.0 up 爲eth0設置IPv4地址與子網掩碼,並將該接口準備好供使用。

大多數系統中, ifconfig –a列出系統的網絡接口以及當前設置。

family參數告訴ifconfig配置的是哪一種網絡協議。用戶可以對一個接口設置多個協議並同時使用,但必須分開配置。

IPv4選項爲inet,IPv6選項爲inet6。缺省爲inet。

address參數指定接口的IP地址。也可以使用主機名,但該主機名必須能在啓動時解析爲IP地址。對於設備的主接口來說,這意味着主機名必須出現在本地hosts文件中,因爲其他解析方式依賴於已被初始化的網絡。

關鍵字up將接口打開,down將其關閉。

netmask選項爲接口設置子網掩碼。

broadcast選項爲接口指定IP廣播地址。

route:配置靜態路由:

route命令指定靜態路由,指明該路由表項永遠不會更改,即使運行路由進程。當在本地網絡中添加新的設備時,通常僅需要指定默認路由。

這裏有兩種情況:

  • 當報文目的地址是直連網絡上的某臺主機時,路由表中的 “next-hop gateway”是本地主機自己的一個接口,報文直接發送到目的地,這時可在配置接口時用ifconfig命令將路由添加到路由表中。

  • 可能沒有與目的地址相匹配的路由,這時,啓用默認路由,否則,返回ICMP“network unreachable” 或 “host unreachable” 信息給發送方。很多本地網絡只有一個出口,所以只需配置指向出口的默認路由。

每一條route命令添加或刪除一條路由。如下route命令原型幾乎適用於每一Linux版本:

route add -net 192.168.45.128/25 zulu-gw.atrust.net

該命令通過網關路由器zulu-gw.atrust.net添加一條到192.168.45.128/25網絡的路由。通常,網關路由器是相鄰主機或本地主機的一個接口(Linux要求在網關地址前加上gw選項名)。

route命令必須能夠將zulu-gw.atrust.net解析成IP地址。

Ubuntu網絡配置:

如下圖所示,Ubuntu在/etc/hostname以及/etc/network/interfaces,以及/etc/network/options中配置網絡信息。

Image
Image

主機名在 /etc/hostname中設置。很多場景都要用到這一文件中配置的名字,某些情況下對命名是有限制要求的。

IP地址,網絡掩碼,默認網關在 /etc/network/interfaces中設置。以iface關鍵字開頭的一行介紹了各個接口。iface之後的縮進行指明附加參數。例如:

Image
Image

ifupifdown命令會讀取該文件並通過調用下層命令(諸如ifconfig)並配以合適的參數將接口連通或斷開。auto語句指定啓動時默認或ifup –a運行時的連通接口。

iface行中的inet關鍵字是ifconfig中使用的地址。關鍵字static表示一種“方式”,指eth0的IP地址和網絡掩碼是直接指定的。地址和網絡掩碼行要求靜態配置,gateway行指明默認網關,用於安裝默認路由。

SUSE網絡配置:

SUSE用戶可以選擇NetworkManager或是傳統的配置方法,用戶可以在YaST中做出選擇。也可以使用YaST GUI來配置傳統系統。這裏,我們介紹傳統方式。除了配置網絡接口以外,YaST也提供 /etc/hosts文件,靜態路由,DNS配置的直接UI。下圖顯示了底層的配置文件。

Image
Image

除了DNS參數以及系統主機名之外,SUSE將大多數網絡選項配置在 /etc/sysconfig/network目錄下的ifcfg-interface文件。每一個接口呈現一個文件。

除了指定接口的IP地址,網關,以及廣播信息,ifcfg-*文件可以配置很多其他網絡選項。ifcfg.template文件對很多參數有清楚的註釋。以下圖爲例:

Image
Image

SUSE系統中全局靜態路由信息(包括默認路由)存儲在routes文件中。文件中的各行就好象route命令省略了選項名,內容包含目標地址,網關,掩碼,接口以及可選參數存儲在路由表中,供路由進程查詢。對於上述僅有默認路由的主機來說,路由文件包含以下內容: default 192.168.1.254 - - 針對不同接口的路由保存在ifroute-interface文件中,接口部件的命名方法與ifcfg-*文件一致。其內容格式與routes文件相同。

Red Hat網絡配置:

Red Hat網絡配置GUI名爲system-config-network,也可以通過Network名下面的System->Administration菜單下訪問。該工具爲配置網絡接口與靜態路由提供了一個簡單的UI,也提供建立IPsec通道,配置DNS,添加/etc/hosts的面板。

下表列出了GUI編輯的底層文件。可在/etc/sysconfig/network中設置機器的主機名,也包括DNS域名以及默認網關。

Image
Image

例如,以下是某個以太網接口的network文件:

Image
Image

接口相關的數據存儲在 /etc/sysconfig/network-scripts/ifcfg-ifname,ifname是網絡接口的名字,該文件爲每個接口設置IP地址,掩碼,網絡,以及廣播地址。也包含指明接口是否要在啓動時開啓。

常規機器有配置以太網接口以及迴環接口的文件,例如:

Image
Image

以及

Image
Image

基於DHCP的echo文件更加簡單:

Image
Image

/etc/sysconfig文件中更改配置信息之後,對相應端口運行 ifdown ifname, ifup ifname。如果一次配置多個端口,使用命令service network restart重置整個網絡。這其實是運行/etc/rc.d/init.d/network的一個快速的方法,每次啓動時被調用,加上start參數。 也可以通過啓動腳本來配置靜態路由,添加到/etc/sysconfig/static-routes 文件的路由信息在啓動時被存入路由表。這些表項爲route add命令指定參數:

Image
Image

首先列出的是接口,但它實際上是在route命令行的最後執行,將路由與指定接口相關聯。(也可以在GUI中看到該架構,路由作爲部分設置內容配給各個接口)。命令剩下的內容包含route參數。上文靜態路由的例子會產生如下命令:

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