雜七雜八

內部區域網路的架構

內部區域網路的架構

最近更新時間: 2002/01/20

這些文章只是捨不得丟的資料,並不是什麼需要特別閱讀的!尤其是文章內容超級舊! 所以,大家看看就好!千萬不要學喔!哈哈哈!

網路的第一課:網路上的芳鄰

我想,很多朋友都是住在宿舍,同學之間都各自擁有電腦,即使在家裡,可能也由於兄弟姊妹們眾多,而使得家裡有兩部以上的電腦。在早期,由於網路尚未發達,那個時候如果要從一部電腦上將資料拷貝到另一部電腦上,是一件相當困擾的事情,例如,你再你的 PC1 上面畫了一張 BMP 的圖形檔,一個檔案可大到 5MB 好了,那麼你要如何將這個檔案拷貝到另一部電腦呢?最簡單的方是就是以壓縮軟體將檔案切割成數個小檔案,然後再以軟碟一個一個的轉到另一部電腦上,然後再解壓縮將各個小檔案結合成原來的圖形檔!不過,要知道,這樣的方式可是很慢的!
現在可有很好的方式來互相分享檔案了,以 Windows 為例,如果你裝有『網路卡』的話,那麼你的桌面上一定會有『網路上的芳鄰』這一個東西,您只要設定好網路的一些參數,那麼直接以滑鼠點兩下『網芳』,然後選擇您想要連線的電腦,呵呵,直接就可以連結到另一部電腦上了(當然囉,另一部電腦也需要設定資源分享才行!)。其實,『網路上的芳鄰』這個東西基本上就是 NetBIOS 的通訊協定而已,如果您對於 NetBIOS 並不知情,那麼把他想成是『網芳』就好了,當然,您也可以看一下 學習網路 裡面的資料囉。
基本上,把兩部以上的電腦連接起來,就可以說是一個小型的『區域網路』(Intranet)了!好了,底下我們就來說一說,要如何達到這樣的一種區域網路的設定呢?而首先,我們先讓 Windows 可以連接起來吧!然後只要將一個缺口連上 Linux Server ,就可以進行各種型式的架站啦!所以,這可是網路基礎的第一課喔!

如何連線

基本上,VBird 特別建議將『對內』與『對外』的連線分開來,亦即在 Linux 主機上面以兩塊網路卡來分隔對內與對外的連線,這樣有個最大的好處,就是您的資料封包比較不容易碰撞而損壞!所以,個人推薦區域網路連線方式為使用以下這一種方式:
  • 各網域內的電腦之間是以 Hub 或 switch 作為連線的介面;
  • Hub 跟 Linux 主機之間以平行線(正常的一般網路線)連接;
  • Linux 主機(或者是其他的主機,例如 IP 分享器,或者是 Windows 2000)開啟 NAT 的功能,將兩塊網路卡進行 IP 偽裝的工作,使得內部的網路卡資料可以透過外部的網路卡資料傳送上 Internet ;
  • 最後,透過固定IP的學術網路,或者是自家的 ADSL 數據機來連上 Internet (註:目前較新的 ADSL Modem 與 Linux 的網路卡相連接的時候,需要使用『跳線』)。
  • 所以,基本上主機是需要兩塊網路卡的,而且一塊是與內部網路連線的,這個內部網路通常是使用虛擬 IP 來進行連線溝通的!我們比較常使用的虛擬 IP 是在 192.168.0.0 到 192.168.255.255 這一段,以我為例,個人是比較喜歡 192.168.1.0~192.168.1.255 這一段的網路,沒有任何原因,單純是因為喜歡!呵呵!
  • 內部網路『區域網路』:

  • 在上面的圖示中,應該可以很容易的發現,內部網路其實就是指:個人電腦一、個人電腦二、個人電腦三、Linux 主機的一塊網路卡以上這四個介面(其實就是四張網路卡啦!)。基本上,我們希望內部網路可以很輕鬆的進行各種網路溝通,所以以上這四張網路卡的 IP 我們希望他可以在同一個網段之內,例如:我們可以設定 Linux 主機用來連接內部網路的 IP 為 192.168.1.2 ,而其他三張網路卡則分別設定為  192.168.1.11 ~ 192.168.1.13 就可以了,然後子遮罩網路都是 255.255.255.0 ,則四張網路卡都屬於同一網段,網路卡之間就可以直接連線而不用透過 Getway 了!如果對於是否為同一網段不是很熟悉,建議先看一下 網路基礎 吧!
     
    容易發生錯誤的地方
    區域網路包括了 Linux 主機上面的一塊對內的網路卡,因為這些卡都在同一個網段上,所以使用廣播的方式就可以傳輸資料,而不需要透過通訊閘亦即 gate way 來聯繫!如果以上面的圖示為例,那麼 192.168.1.11 連到 192.168.1.13 可以直接使用網路上的芳鄰『直接』連線。不過,如果需要連到外部 Internet 上面,那麼就需要設定 gate way 了!另外, Gate way 通常就是區域網路中的一塊網路卡界面,以上面的圖示為例,區域網路的 Gate way 自然就是 Linux 的對內網路卡囉,那你的區域網路內的電腦如何連上 Internet 呢?以上圖為例:192.168.1.11 的電腦與 192.168.1.2 為同一網域內,所以資料可以直接傳輸,而網卡 192.168.1.2 可以透過 NAT 連上對外的網卡而連上 Internet !然後你就可以上網啦!這裡需要特別注意了, Gateway 的設定常常是大家容易錯誤的地方。
    另外,以 Windows 為例,他預設的 Gateway (對內網路卡界面的 IP )為 192.168.0.1 這一個,所以你的區域網路內的所有電腦 IP 需要設定在 192.168.0.2-192.168.0.255 之間喔!並且 Netmask 為 255.255.255.0 囉!

    關於 Hub :上面還要注意到,如果你只是一般的家庭的話,則 Hub 可以選擇很便宜的五孔的那一種(一個大概只要 500-600 元),但是如果你是一個宿網,而且你們同學之間常常有大流量的文件傳輸(例如由個人電腦一傳到個人電腦二),為了增加傳輸的效率,個人是建議使用可以自動分辨 10/100Mbps 的集線器或者是 switch 來使用,因為他的傳輸速率是一般 10Mbps 的10倍!當然,如果有錢的話,那麼買 Swith 更好!你可以看看底下的文章,看看 Switch 與 Hub 有什麼不同:

    Hub 與 Switch 的分別
    關於網路卡:目前的網路卡都太便宜了,一張 10/100 Mbps 的卡只要 200-300 就買的到了!基本上,買螃蟹卡就很夠用了!不過,如果你要在 Linux 安裝兩塊網路卡的話,那麼建議買兩種不同晶片的網路卡會比較好喔!基本上,這裡教大家的是 ADSL 系統,所以囉,隨便一張網路卡就都可以啦!不用太擔心喔!
    關於網路線:這個是特別需要注意的地方,由於目前最常使用的網路線接頭為 RJ45 的網路線,而這種網路線又因為接頭部分有沒有經過跳線處理而分為兩種線材,一種是平行線(就是沒有經過跳線處理的),一種就稱為跳線。上面的圖形中,連接到 Hub 的網路線都是正常的網路線,亦即是 平行線 ,而由 Linux 主機接到 ADSL 數據機的線段則是使用跳線!由於線材使用錯誤將造成無法連線,所以這裡請特別注意喔!

    要安裝哪些通訊協定

    由於我們主要是使用 Linux 主機來連線上 Windows 系統的個人電腦,所以在你的 Windows 系統中,網路就需要有以下的設定才能讓每台電腦看到對方!
    • NetBEUI

    • 讓我們回到IBM最初進軍個人電腦網路的時代﹐他們當時的確需要一個很基本的網路通訊協定﹐但他們並不打算用此來建構大型網路﹐僅僅供數十台電腦甚至更小的網路而已。基于這個訴求﹐就誕生了Network Basic Input/Output System﹐或稱NetBIOS。
      NetBIOS其實只有18個命令(command)來讓網路的電腦能夠建立?維持?和使用連接服務。不過IBM在不久後又再推出了NetBIOS的延伸版本﹕NetBIOS Extened User Interface﹐或稱NetBEUI﹐基本上是NetBIOS的改良版本而已。然而﹐NetBIOS和NetBEUI終究是不同的﹕NetBEUI事實上可以說是一個傳輸協定﹐而NetBIOS充其量只是一組命令來讓系統可以使用網路而已﹐在技術角度來看﹐它是一個Application Program Interface (API)。
      NetBEUI可以算是您能夠用到的最快通訊協定了。這個“最快”是指它可以將格式化資料放進封包裡面﹐而接收節點又可以迅速的解讀到內容。然而﹐NetBEUI卻有一個最致命的弱點﹕它不是可路由(routable)協定﹐也就是不能夠和其它網路的機器對講。NetBEUI在本地網路裡面是非常優秀的協定﹐但如果您想和設在其它網路的機器溝通﹐NetBEUI就不是您所需要的了。如果您想實現和其它網路的電腦溝通﹐您極有可能必需通過路由設備或路由軟體來實現﹐但無論用哪一樣﹐很遺憾﹐NetBEUI都做不到。
      不過﹐Microsoft 網路則運用一種叫 NetBIOS over IP 的技術﹐來連接不同網路的 NetBEUI 客戶。但歸根結底﹐用來達成路由的不是 NetBIOS 而是 TCP/IP。
    • TCP/IP

    • 美國國防部開發的 Transmission Control Protocol / Internet Protocol (TCP/IP)﹐當初是用來配合ARPANET (Advanced Research Projects Agency Net)來處理不同硬體之間的連接問題的﹐比如Sun系統和Mainframe?Mainframe和個人電腦之間的連接。
      Internet Protocol (IP)工作於網路層(以後會繼續和大家探討 OSI 的網路層級)﹐它提供了一套標準讓不同的網路有規則可循﹐當然﹐前提是您想使用IP從一個網路將封包路由到另一個網路。IP在設計上是用來在LAN和LAN及PC和PC之間進行傳輸的。
      您可以把IP看成是游戲規則﹐而TCP則用來詮釋這些規則的。雖然TCP/IP原先是專門為幾所大學和機構的使用而設計的﹐但現在TCP/IP已經成為最流行的通訊協定了﹐我們使用的Internet就是用TCP/IP來傳送封包的了。下面就讓我們看看TCP/IP是怎樣工作的﹕
      假如您的公司在好些地方都有分公司﹐各自都有著自己的本地網路(LAN)﹐在總公司跑的是Novell網路﹐但分公司大部份都是用麥金塔電腦。當Mac有數據要傳送給PC的時候將會如何呢﹖
      首先﹐TCP會在這兩個平臺建立起一個可以提供全雙工檢錯(對雙向的數據都進行錯誤檢測)的連接。
      接著﹐IP制定好溝通規則以及Mac和PC之間的連接port。到這裡為止﹐TCP已經準備好數據了﹐如果數據太大﹐IP就將之分拆成幾份較小的封包﹐並且在封包上面加上一個新的header(轉送地址)﹐確保封包會被正確傳送。TCP還會加上標籤說明數據的種類及其長度。
      再下來﹐IP將封包轉換成標準的編碼格式並將之傳送給PC。
      最後﹐在PC上面的TCP將封包解碼並翻譯成PC能夠懂的格式﹐也就是它自己所使用的網路協定。TCP/IP可以說是現行協定中用途最廣的協定之一﹐由于它嘗試在所有硬體上實現所有事情。不過﹐它也是最慢的傳輸協定之一﹐在某些情形之下﹐它的速度只有NetBEUI的七成。
      沒錯!不要懷疑!只要這兩個通訊協定就夠了!通訊協定越多反而越容易造成網路的延遲現象呢!在安裝完成了上面的通訊協定之後,相信你的區域網路之中,所有的 Windows 個人電腦已經可以看到對方了,只要在開啟資源分享項目,即可達到區域網路的目的。此外,到底要不要安裝 NetBIOS (或者是 NetBEUI)呢,建議您可以看一下底下這一篇:
      如果你的區域網路中並沒有其他的伺服器,那麼真的只要有這兩個通訊協定就夠了喔!千萬注意了!否則 Windows 98 與 Windows 2000 的互相連線速度會很慢喔!
       
      Windows 2000 與 Windows 98 『網芳』連線的速度很慢?
      這個問題很有可能是來自於網路的通訊協定的問題,先前 VBird 也發生了錯誤的認知,認為通訊協定設定越多就會支援越多的網路服務,後來才知道,原來服務越多反而可能造成網路的停頓現象!在 VBird 的研究室中,就發生了 Windows 98 與 Windows 2000 的『網芳』連線速度非常之慢,甚至會有無法連線的問題。後來修改了網路的通訊協定之後,就已經得到了改善。
      解決方法:Windows98 
      在 Windows98 中,將滑鼠移動『網芳』上,按右鍵,選內容,進入網路設定項目; 
      你應該會看到一些有的沒的網路設定,而通訊協定中,請將所有的通訊協定拿掉,只剩下兩個: 
      • NetBEUI 
      • TCP/IP 
      • 重新開機。 
      解決方法:Windows2000 
      進入網路設定中,同樣的,將通訊協定刪除到只剩下兩個即可! 

    確定 Windows 網路參數

    • 連上 Internet 的方式:由於目前最常用來連線的方式,主要分為:固定IP(例如學術網路,或者是固定制IP的專線),浮動式IP(例如目前最流行的 ADSL 計時制)兩種,這兩種網路的設定方式雖是大同小異,但是仍有部分不同的,所以你要先確定你的連線上 Internet 的方式為何!不過,無論如何,在您的電腦上都需要底下的各項參數:
      • 你的電腦 IP 及;
      • 子遮罩網路 IP 與;
      • Getway 的 IP 還有;
      • DNS 的 IP 一組
      另外,大家最常搞錯的就是 DNS 這個東西啦,請記住『 DNS 這個 IP 位址並不是你的主機的 IP ,而是你的 ISP 提供給你的 DNS 主機位址』舉例來說,南部的 Seednet 的 DNS 為 139.175.10.20,這個就是 DNS 啦!
    • 設定 Linux 主機成為 NAT 主機:由於內部網路是由虛擬 IP 所構成的,虛擬 IP 並不能與外界的 Internet 溝通,所以你如果要連上 Internet 的話,就必須透過具有實體 IP 的 Linux 主機來連線了!因此,你的 Linux 主機必須有兩張網路卡:
      1. 一張以實體IP(不論是固定的或者是浮動的)與 Internet 連線,
      2. 一張則以虛擬IP與你的內部網路連線。
      3. 然後將這兩塊在 Linux 主機內的網路卡經由 Linux 內部的 NAT 設定來達成使 虛擬 IP 連上 Internet 的功能。
    • Linux 主機上的設定:如上面所說的,Linux 主機上面有兩塊網路卡,如何設定呢?
      1. 與外界溝通的網路卡:這一張網路卡的設定中,如果是固定 IP 的話,則直接輸入 IP 及子遮罩網路,就可以直接連上 Internet 了;而如果是使用撥接(或者是 ADSL 計時制),則必須使用 rp-pppoe 之類的軟體來連上網路!
      2. 與內部網路溝通的網路卡:這一張卡的 IP 必須與你的內部網路的所有的電腦之 IP 都在同一網段內,例如 192.168.1.0-192.168.1.255 之內,另外,這一張網路卡的 IP 將是你內部網路的所有電腦的『通訊閘』
    • Windows 個人電腦上的設定:在個人電腦方面,由於我們已經設定了 NAT 主機,這一個主機有一個固定的虛擬 IP 、子遮罩網路,因此,Windows 系統則直接輸入:
      1. 確定網路卡沒有問題;
      2. 在網路的設定項目中,設定通訊協定『TCP/IP』與『BetBEUI』;
      3. 在 TCP/IP 的項目中輸入:
        • 一個固定的虛擬 IP
        • 子遮罩網路
        • 而通訊閘則設定為 NAT 主機的 IP
        • DNS 的設定為 ISP 所提供的 DNS 主機,而不是你的 NAT 主機!
      基本上,網路的狀態可以有點像下圖:
      TCP/IP 的狀態則有點像下圖:
      透過上面的連線、在 Windows 上面增加通訊協定,並將你的 Linux 主機設定成為 NAT 主機,則你的區域網路就可以成功的架設起來,並且可以透過 NAT 的技術來達成每部電腦都可以連上 Internet 的功能喔!(相關的設定你可以來這裡看看喔

    會不會中毒?當然會!

    基本上,只要您設定好了 Windows 系統之後,設定了:
    • 區域網路中,其 IP 與 Netmask 為同一網段;
    • 在網路的設定中,區域網路的每一部電腦具有『相同的工作群組』與『不同的電腦名稱』;
    • 在網路的設定中,已經開啟了『Files and Printer Sharing for MicroSoft 』這個項目,亦即『別人也可以使用我的電腦、印表機』之類的設定必需要開啟;
    • 欲被分享的電腦已經開啟了『資源分享』或者是 NT 系列所謂的『共用』了(可直接在檔案總管按右鍵來選擇)。
    如果上面的手續都達到了,那麼您的電腦就可以達到資源分享的目的囉!不過,由於去年九月份以來(2001/09)有一支嚴重的病毒『Nimda』病毒大肆的搞破壞!這支病毒恐怖的地方在於他可以使用 NetBIOS 這一個通訊協定來感染,說的簡單一點,就是『Nimda 病毒可以由網路上的芳鄰的傳輸方式來感染!』在剛發病的時候,幾乎同一個網域的只要有開啟資源分享的電腦都中毒了!很是恐怖的!所以囉,這裡要建議大家的是:
    • 如果需要資源分享,那麼才開啟資源分享;
    • 並且在分享完畢之後,趕快將您開啟的分享關閉!
    • 可以的話,嚴格的控制您區域內的電腦流量!
    尤其像我們研究室,由於系上所有的電腦都是在同一個網域中,即使您的研究室控制得很好,您也不敢肯定別的研究室可以很完備的抵擋病毒的入侵,所以,請盡量做好防護的工作,包括安裝防毒軟體、盡量減少資源分享的機會等等!
    2002/01/21以來統計人數
    其他連結
    環境工程模式篇
    鳥園討論區
    鳥哥舊站

    今日 人數統計
    昨日 人數統計
    本月 人數統計
    上月 人數統計