一個故事讓你明白 網關,DNS,路由,ARP等常見網絡概念

網關是一種充當轉換重任的計算機系統或設備。在使用不同的通信協議、數據格式或語言,甚至體系結構完全不同的兩種系統之間,網關是一個翻譯器。與網橋只是簡單地傳達信息不同,網關對收到的信息要重新打包,以適應目的系統的需求。同時,網關也可以提供過濾和安全功能。大多數網關運行在OSI 7層協議的頂層--應用層。 大家都知道,從一個房間走到另一個房間,必然要經過一扇門。同樣,從一個網絡向另一個網絡發送信息,也必須經過一道“關口”,這道關口就是網關。顧名思義,網關(Gateway)就是一個網絡連接到另一個網絡的“關口”。 按照不同的分類標準,網關也有很多種。TCP/IP協議裡的網關是最常用的,在這裡我們所講的“網關”均指TCP/IP協議下的網關。

那麼網關到底是什麼呢?網關實質上是一個網絡通向其他網絡的IP地址。比如有網絡A和網絡B,網絡A的IP地址範圍為“192.168.1.1~192. 168.1.254”,子網掩碼為255.255.255.0;網絡B的IP地址範圍為“192.168.2.1~192.168.2.254”,子網掩碼為255.255.255.0。在沒有路由器的情況下,兩個網絡之間是不能進行TCP/IP通信的,即使是兩個網絡連接在同一臺交換機(或集線器)上,TCP/IP協議也會根據子網掩碼(255.255.255.0)判定兩個網絡中的主機處在不同的網絡裡。而要實現這兩個網絡之間的通信,則必須通過網關。如果網絡A中的主機發現數據包的目的主機不在本地網絡中,就把數據包轉發給它自己的網關,再由網關轉發給網絡B的網關,網絡B的網關再轉發給網絡B的某個主機(如附圖所示)。網絡B向網絡A轉發數據包的過程。 所以說,只有設置好網關的IP地址,TCP/IP協議才能實現不同網絡之間的相互通信。那麼這個IP地址是哪臺機器的IP地址呢?網關的IP地址是具有路由功能的設備的IP地址,具有路由功能的設備有路由器、啟用了路由協議的服務器(實質上相當於一臺路由器)、代理服務器(也相當於一臺路由器)。

PS:

連接到多個物理 TCP/IP 網絡的設備,可以在這些網絡之間進行路由選擇或交付 IP 數據包。網關在不同的傳輸協議或數據格式(例如,IPX 和 IP)之間進行轉換,通常是因為它的轉換能力而將其添加到網絡中。

在和 Novell NetWare 網絡交互操作的上下文中,網關在 Windows 網絡中使用的服務器信息塊 (SMB) 協議以及 NetWare 網絡使用的 NetWare 核心協議 (NCP) 之間起著橋樑的作用。網關也被稱為 IP 路由器。

計算機主機網關的作用是什麼?

假設你的名字叫小不點,你住在一個大院子裡,你的鄰居有很多小夥伴,在門口傳達室還有個看大門的李大爺,李大爺就是你的網關。當你想跟院子裡的某個小夥伴玩,只要你在院子裡大喊一聲他的名字,他聽到了就會回應你,並且跑出來跟你玩。

但是你不被允許走出大門,你想與外界發生的一切聯繫,都必須由門口的李大爺(網關)用電話幫助你聯繫。假如你想找你的同學小明聊天,小明家住在很遠的另外一個院子裡,他家的院子裡也有一個看門的王大爺(小明的網關)。但是你不知道小明家的電話號碼,不過你的班主任老師有一份你們班全體同學的名單和電話號碼對照表,你的老師就是你的DNS服務器。於是你在家裡撥通了門口李大爺的電話,有了下面的對話:

小不點:李大爺,我想找班主任查一下小明的電話號碼行嗎?

李大爺:好,你等著。(接著李大爺給你的班主任掛了一個電話,問清楚了小明的電話)問到了,他家的號碼是211.99.99.99

小不點:太好了!李大爺,我想找小明,你再幫我聯繫一下小明吧。

李大爺:沒問題。(接著李大爺向電話局發出了請求接通小明家電話的請求,最後一關當然是被轉接到了小明家那個院子的王大爺那裡,然後王大爺把電話給轉到小明家)

就這樣你和小明取得了聯繫。

至於DHCP服務器嘛,可以這樣比喻:

你家院子裡的居民越來越多了,傳達室李大爺那裡的電話交換機已經不能滿足這麼多居民的需求了,所以只好採用了一種新技術叫做DHCP,居民們開機的時候隨機得到一個電話號碼,每一次得到的號碼都可能會不同。

你家門口的李大爺:就是你的網關

你的班主任:就是你的DNS服務器

傳達室的電話交換機:就是你的DHCP服務器

同上,李大爺和王大爺之間的對話就叫做路由

另:如果還有個小朋友叫做小暗,他住的院子看門的是孫大爺,因為小暗的院子剛蓋好,孫大爺剛來不久,他沒有李大爺和王大爺辦公室的電話(李大爺和王大爺當然也沒有他的電話),這時會有兩種情況:

1、居委會的趙大媽告訴了孫大爺關於李、王兩位大爺的電話(同時趙大媽也告訴了李、王關於孫的電話),這就叫靜態設定路由

2、趙大媽病了,孫大爺自己到處打電話,見人就說:“我是小暗他們院子管電話的”,結果被李、王二位聽到了,就記在了他們的通訊錄上,然後李、王就給孫大爺回了個電話說:“我是小明(小不點)他們院子管電話的”,這就叫動態設定路由

然後有一天小不點要找小暗,結果自然是小不點給李大爺打電話說:“大爺,我找小暗”(這裡省略了李大爺去查小暗電話的過程,假設他知道小暗的電話),李大爺一找通訊錄:“哦,小暗的院子的電話是孫大爺管著的,要找小暗自然先要通知孫大爺,我可以通知王大爺讓他去找孫大爺,也可以自己直接找孫,那當然是自己直接找孫方便了”,於是李大爺給孫大爺打了電話,然後孫大爺又把電話轉到了小暗家。

這裡李大爺的通訊錄叫做路由表

李大爺選擇是自己直接找孫大爺還是讓王大爺幫忙轉接叫做路由選擇

李大爺之所以選擇直接找孫大爺是有依據的,因為他直接找孫大爺就能一步到位,如果要王大爺轉接就需要兩步才能完成,這裡的“步”叫做“跳數”,李大爺的選擇遵循的是最少步驟(跳數)原則(如果他不遵守這個原則,小不點可能就會多等些時間才能找到小暗,最終結果可能導致李大爺因工作不力被炒魷魚,這叫做“延時太長,選路原則不合理,換了一個路由器”)

當然,事情總是變化的,小不點和小明吵架了,這些天小不點老是給小暗打電話,小明心裡想:“操,他是不是在說我壞話啊?”於是小明決定偷聽小不點和小暗的通話,但是他又不能出院子,怎麼辦呢?小明做了這樣一個決定:

首先他告訴自己院裡管電話的王大爺說:“你給李大爺打個電話說小暗搬到咱們院子了,以後凡是打給他的電話我來接”,王大爺沒反映過來(畢竟年紀大了啊!)就給李大爺打了電話,說:“現在我來管理小暗的電話了,孫已經不管了”,結果李大爺就把他的通訊錄改了,這叫做

路由欺騙

以後小不點再找小暗,李大爺就轉給王大爺了(其實應該轉給孫大爺的),王大爺收到了這個電話就轉給了小明(因為他之前已經和小明說好了),小明收到這個電話就假裝小暗和小不點通信。因為小明作賊心虛,害怕明天小不點和小暗見面後當面問他,於是通信斷了之後,又自己以小不點的名義給小暗通了個電話複述了一遍剛才的話,有這就叫數據竊聽

再後來,小不點還是不斷的和小暗聯繫,而零落了小明,小明心裡嘀咕啊:“我不能總是這樣以小暗的身份和小不點通話啊,外一有一天露餡了怎麼辦!”於是他想了一個更陰險的招數:“乾脆我也不偷聽你們的電話了,你小不點不是不給我打電話嗎!那我讓你也給小暗打不了,哼哼!”,他怎麼做的呢?我們來看:

他聯繫了一批狐朋狗友,和他們串通好,每天固定一個時間大家一起給小暗院子傳達室打電話,內容什麼都有,只要傳達室的孫爺爺接電話,就會聽到“打雷啦,下雨收衣服啊!”、“人是人他媽生的,妖是妖他媽生的”、“你媽貴姓”等等,聽的腦袋都大了,不聽又不行,電話不停的響啊!終於有一天,孫爺爺忍不住了,大喊一聲:“我受不了拉!!!!”,於是上吊自殺了!

這就是最簡單的DDOS攻擊,孫爺爺心理承受能力弱的現象叫做“數據報處理模塊有BUG”,孫爺爺的自殺叫做“路由器癱瘓”。如果是我,就會微笑著和他們拉家常,例如告訴他們“我早就聽了天氣預報,衣服10分鐘前已經收好了”或者“那你媽是人還是妖”或者“和你奶奶一個姓”等等,我這種健全的心理叫做“健壯的數據報處理,能夠抵禦任何攻擊”

孫爺爺癱了之後,小不點終於不再給小暗打電話了,因為無論他怎麼打對方都是忙音,這種現象叫做“拒絕服務”,所以小明的做法還有一個名字叫做“拒絕服務攻擊”。

小明終於安靜了幾天,...

幾天後,小明的院子來了一個美麗的女孩,名字叫做小麗,小明很喜歡她(小小年紀玩什麼早戀!)可是小麗有個很帥的男朋友,小明乾瞪眼沒辦法。當然這裡還是要遵循上面的原則:小麗是不能出院子的。那個男的想泡小麗自然只能打電話,於是小明又蠢蠢欲動了:

還記得王爺爺是院子的電話總管嗎?他之所以能管理電話是因為他有一個通訊錄,因為同一個院子可能有2個孩子都叫小明,靠名字無法區分,所以通訊錄上每一行只有兩項:

門牌 電話

一號門 1234567 (這個是小明的)

二號門 7654321 (這個是小麗的)

......

王爺爺記性不好,但這總不會錯了吧(同一個院子不會有2個“二號門”吧)?每次打電話人家都要說出要找的電話號碼,然後通過通訊錄去院子裡面敲門,比如人家說我找“1234567”,於是王爺爺一比較,哦,是一號門的,他就去敲一號門“聽電話”,如果是找“7654321”,那他就找二號門“聽電話”。

這裡的電話號碼就是傳說中的“IP地址”

這裡的門牌號就是傳說中的網卡的’MAC‘地址(每一塊網卡的MAC地址都是不一樣的,這是網卡的製造商寫死在網卡的芯片中的)

小明心裡想“奶奶的,老子泡不到你也別想泡”,於是他打起了王爺爺通訊錄的主意,經過細心的觀察,周密的準備,他終於發現王爺爺有尿頻的毛病(畢竟是老人啊...),終於在一個月黑風高的白天,王爺爺去上廁所了,小明偷偷的摸進傳達室,小心翼翼的改了王爺爺的通訊錄......

過了幾天,小麗的男朋友又給小麗打來了電話,對方報的電話是“7654321”,王爺爺一看通訊錄,靠:

門牌 電話

一號門 1234567 (這個是小明的)

一號門 7654321 (注意:這個原來是小麗的,但是被小明改了)

......

王爺爺不知道改了啊,於是就去找一號門的小明瞭,小明心裡這個美啊,他以小麗父親的口吻嚴厲的教訓了那個男的和小麗之間不正當的男女關係,結果那個男的恭恭敬敬的掛了電話。當然小麗並不知道整個事情的發生...

這裡小明的行為叫做“ARP欺騙”(因為在實際的網絡上是通過發送ARP數據包來實現的,所以叫做“ARP欺騙”),王爺爺的通訊錄叫做“ARP表”

這裡要注意:王爺爺現在有兩個通訊錄了,一個是記錄每個院子傳達室電話的本本,叫做“路由表”,一個是現在說的記錄院子裡面詳細信息的本本,叫做“

ARP表”。

有句名言是“人們總是在追求完美的,儘管永遠也做不到”(請記住這句話,因為這是一個大名人--也就是我,說的)

王爺爺的制度中有一條是這麼寫的“每個月要重新檢查一下門牌號和電話的對應本(也就是ARP表)”,這個動作叫做“刷新ARP表”,每個月的時間限制叫做“刷新ARP表的週期”。這樣小明為了讓那個男的永遠不能找到小麗,之後每個月都要偷偷改一次那個通訊錄,不過這樣也是不得不做的事啊!

補充一點,小明是很聰明的,如果通訊錄(ARP表)被改成了這樣:

門牌(MAC) 電話(IP) 一

號門 1234567 (這個是小明的)

二號門 1234567 (注意:這個被小明改了,但是他一時頭暈改錯了)

......

就會是計算機就會彈出一個對話框提示“出現重複的IP地址”,最終會導致王爺爺不知所措,於是通知一號門和二號門,你們的電話重複了。這樣小麗就知道有人在破壞她的好事,這個現象叫做“騙局被揭穿了”

小不點知道了小明偷聽他和小暗的電話,於是就和小暗約定好了密碼。小不點在家裡把要說的加密了之後告訴小暗。土豆-〉星期三,地瓜-〉請客,笨蛋-〉小不點家。於是小不點告訴小暗:土豆笨蛋地瓜。小明聽了???不懂。。。。鬱悶了。。。這是加密。

除此之外,小麗也知道了小明改他家的電話號碼了。於是王爺爺就登門一個一個把電話和門牌號記下來。並且藏起來不允許外人修改,只能自己有鑰匙(密碼)。這是ip地址和MAC地址綁定。當有人改了電話號碼的時候,就得找王爺爺改。麻煩是麻煩了,但是安全了。不過小明偷偷的把王爺爺的鑰匙偷配了一把(盜竊密碼成功),於是他還可以修改。這樣麼,就這樣了。

網關(Gateway)又稱網間連接器、協議轉換器。網關在傳輸層上以實現網絡互連,是最複雜的網絡互連設備,僅用於兩個高層協議不同的網絡互連。網關的結構也和路由器類似,不同的是互連層。網關既可以用於廣域網互連,也可以用於局域網互連。

解決跨網關技術

現行的IPV4的IP地址是32位的,根據頭幾位再劃分為A、B、C三類地址;但由於INTERNET的迅猛發展,IP資源日漸枯竭,可供分配的IP地越來越少,跟一日千里的INTERNET發展嚴重衝突,在IPV6還遠未能全面升級的情況下,惟有以代理服務器的方式,實行內部網地址跟公網地址進行轉化而實現接入INTERNET。

中介作用的代理服務器就是一個網關,也就是這個網關帶給現階段的多媒體通訊系統無盡的煩惱。在IP資源可憐的情況下,惟有以網關甚至多層網關的方式接入寬帶網, 因為多媒體通訊系統的協議如H.323等要進行業務的雙方必須有一方有公網的IP地址,但是現在的寬帶有幾個用戶能符合這個要求?MICOSOFT的NETMEETING等等多媒體通訊系統就是處於這種尷尬的位置;跨網關成為頭疼的難題。

跨網關: 網絡數據通過層層網關,受制於網關節點速度,網絡速度大大降低。 跨網關技術基於底層網絡協議,突破網關瓶頸,實現客戶點對點交流。


分享到:


相關文章: