這是一篇很老的文章舱禽,但非常有趣。原標(biāo)題“超經(jīng)典:什么叫網(wǎng)關(guān)”硼端。
計(jì)算機(jī)主機(jī)網(wǎng)關(guān)的作用是什么阱冶?
假設(shè)你的名字叫小不點(diǎn),你住在一個(gè)大院子里杂彭,你的鄰居有很多小伙伴墓毒,在門口傳達(dá)室還有個(gè)看大門的李大爺,李大爺就是你的網(wǎng)關(guān)亲怠。當(dāng)你想跟院子里的某個(gè)小伙伴玩所计,只要你在院子里大喊一聲他的名字,他聽到了就會(huì)回應(yīng)你团秽,并且跑出來(lái)跟你玩主胧。
但是你不被允許走出大門叭首,你想與外界發(fā)生的一切聯(lián)系,都必須由門口的李大爺(網(wǎng)關(guān))用電話幫助你聯(lián)系踪栋。假如你想找你的同學(xué)小明聊天焙格,小明家住在很遠(yuǎn) 的另外一個(gè)院子里,他家的院子里也有一個(gè)看門的王大爺(小明的網(wǎng)關(guān))夷都。但是你不知道小明家的電話號(hào)碼眷唉,不過(guò)你的班主任老師有一份你們班全體同學(xué)的名單和電 話號(hào)碼對(duì)照表,你老師就是你的DNS服務(wù)器囤官。于是你在家里撥通了門口李大爺?shù)碾娫挾簦辛讼旅娴膶?duì)話:
小不點(diǎn):李大爺,我想找班主任查一下小明的電話號(hào)碼行嗎治拿?
李大爺:好摩泪,你等著。(接著李大爺給你的班主任掛了一個(gè)電話劫谅,問清楚
了小明的電話)問到了见坑,他家的號(hào)碼是211.99.99.99
小不點(diǎn):太好了!李大爺捏检,我想找小明荞驴,你再幫我聯(lián)系一下小明吧。
李大爺:沒問題贯城。(接著李大爺向電話局發(fā)出了請(qǐng)求接通小明家電話的請(qǐng)求熊楼,最后一關(guān)當(dāng)然是被轉(zhuǎn)接到了小明家那個(gè)院子的王大爺那里,然后王大爺把電話給轉(zhuǎn)到小明家)就這樣你和小明取得了聯(lián)系能犯。
至于DHCP服務(wù)器嘛鲫骗,可以這樣比喻:
你家院子里的居民越來(lái)越多了,傳達(dá)室李大爺那里的電話交換機(jī)已經(jīng)不能滿足這么多居民的需求了踩晶,所以只好采用了一種新技術(shù)叫做DHCP执泰,居民們開機(jī)的時(shí)候隨機(jī)得到一個(gè)電話號(hào)碼,每一次得到的號(hào)碼都可能會(huì)不同渡蜻。
你家門口的李大爺:就是你的網(wǎng)關(guān)
你的班主任:就是你的DNS服務(wù)器
傳達(dá)室的電話交換機(jī):就是你的DHCP服務(wù)器
同上术吝,李大爺和王大爺之間的對(duì)話就叫做路由。
另:如果還有個(gè)小朋友叫做小暗茸苇,他住的院子看門的是孫大爺排苍,因?yàn)樾“档脑鹤觿偵w好,孫大爺剛來(lái)不久学密,他沒有李大爺和王大爺辦公室的電話(李大爺和王大爺當(dāng)然也沒有他的電話)淘衙,這時(shí)會(huì)有兩種情況:
1、居委會(huì)的趙大媽告訴了孫大爺關(guān)于李腻暮、王兩位大爺?shù)碾娫挘ㄍ瑫r(shí)趙大媽也告訴了李幔翰、王關(guān)于孫的電話)漩氨,這就叫靜態(tài)設(shè)定路由
2、趙大媽病了遗增,孫大爺自己到處打電話,見人就說(shuō):“我是小暗他們?cè)鹤庸茈娫挼摹弊鲂蓿Y(jié)果被李霍狰、王二位聽到了,就記在了他們的通訊錄上饰及,然后李蔗坯、王就給孫大爺回了個(gè)電話說(shuō):“我是小明(小不點(diǎn))他們?cè)鹤庸茈娫挼摹保@就叫動(dòng)態(tài)設(shè)定路由
然后有一天小不點(diǎn)要找小暗燎含,結(jié)果自然是小不點(diǎn)給李大爺打電話說(shuō):“大爺宾濒,我找小暗”(這里省略了李大爺去查小暗電話的過(guò)程,假設(shè)他知道小暗的電 話)屏箍,李大爺一找通訊錄:“哦绘梦,小暗的院子的電話是孫大爺管著的,要找小暗自然先要通知孫大爺赴魁,我可以通知王大爺讓他去找孫大爺卸奉,也可以自己直接找孫,那 當(dāng)然是自己直接找孫方便了”颖御,于是李大爺給孫大爺打了電話榄棵,然后孫大爺又把電話轉(zhuǎn)到了小暗家。
這里李大爺?shù)耐ㄓ嶄浗凶雎酚杀怼?/p>
李大爺選擇是自己直接找孫大爺還是讓王大爺幫忙轉(zhuǎn)接叫做路由選擇潘拱。
李大爺之所以選擇直接找孫大爺是有依據(jù)的疹鳄,因?yàn)樗苯诱覍O大爺就能一步到位,如果要王大爺轉(zhuǎn)接就需要兩步才能完成芦岂,這里的“步”叫做“跳數(shù)”瘪弓,李大 爺?shù)倪x擇遵循的是最少步驟(跳數(shù))原則(如果他不遵守這個(gè)原則,小不點(diǎn)可能就會(huì)多等些時(shí)間才能找到小暗盔腔,最終結(jié)果可能導(dǎo)致李大爺因工作不力被炒魷魚杠茬,這叫 做“延時(shí)太長(zhǎng)月褥,選路原則不合理弛随,換了一個(gè)路由器”)
當(dāng)然,事情總是變化的宁赤,小不點(diǎn)和小明吵架了舀透,這些天小不點(diǎn)老是給小暗打電話,小明心里想:“操决左,他是不是在說(shuō)我壞話般倒弧走贪?”于是小明決定偷聽小不點(diǎn)和小暗的通話,但是他又不能出院子惑芭,怎么辦呢坠狡?小明做了這樣一個(gè)決定:
首先他告訴自己院里管電話的王大爺說(shuō):“你給李大爺打個(gè)電話說(shuō)小暗搬到咱們?cè)鹤恿耍院蠓彩谴蚪o他的電話我來(lái)接”遂跟,王大爺沒反映過(guò)來(lái)(畢竟年紀(jì)大了 疤友亍!)就給李大爺打了電話幻锁,說(shuō):“現(xiàn)在我來(lái)管理小暗的電話了凯亮,孫已經(jīng)不管了”,結(jié)果李大爺就把他的通訊錄改了哄尔,這叫做路由欺騙假消。
以后小不點(diǎn)再找小暗,李大爺就轉(zhuǎn)給王大爺了(其實(shí)應(yīng)該轉(zhuǎn)給孫大爺?shù)模┝虢樱醮鬆斒盏搅诉@個(gè)電話就轉(zhuǎn)給了小明(因?yàn)樗耙呀?jīng)和小明說(shuō)好了)富拗,小明收到 這個(gè)電話就假裝小暗和小不點(diǎn)通信。因?yàn)樾∶髯髻\心虛亿傅,害怕明天小不點(diǎn)和小暗見面后當(dāng)面問他媒峡,于是通信斷了之后,又自己以小不點(diǎn)的名義給小暗通了個(gè)電話復(fù)述 了一遍剛才的話葵擎,有這就叫數(shù)據(jù)竊聽谅阿。
再后來(lái),小不點(diǎn)還是不斷的和小暗聯(lián)系酬滤,而冷落了小明签餐,小明心里嘀咕啊:“我不能總是這樣以小暗的身份和小不點(diǎn)通話啊盯串,外一有一天露餡了怎么辦氯檐!”于 是他想了一個(gè)更陰險(xiǎn)的招數(shù):“干脆我也不偷聽你們的電話了,你小不點(diǎn)不是不給我打電話嗎体捏!那我讓你也給小暗打不了冠摄,哼哼!”几缭,他怎么做的呢河泳?我們來(lái)看:
他聯(lián)系了一批狐朋狗友,和他們串通好年栓,每天固定一個(gè)時(shí)間大家一起給小暗院子傳達(dá)室打電話拆挥,內(nèi)容什么都有,只要傳達(dá)室的孫爺爺接電話某抓,就會(huì)聽到“打雷 啦纸兔,下雨收衣服岸韫稀!”汉矿、“人是人他媽生的崎坊,妖是妖他媽生的”、“你媽貴姓”等等洲拇,聽的腦袋都大了流强,不聽又不行,電話不停的響吧氪打月!終于有一天,孫爺爺忍不住 了蚕捉,大喊一聲:“我受不了拉W喔荨!F妊汀秘通!”,于是上吊自殺了敛熬!
這就是最簡(jiǎn)單的DDOS攻擊肺稀,孫爺爺心理承受能力弱的現(xiàn)象叫做“數(shù)據(jù)報(bào)處理模塊有BUG”,孫爺爺?shù)淖詺⒔凶觥奥酚善靼c瘓”应民。如果是我话原,就會(huì)微笑著 和他們拉家常,例如告訴他們“我早就聽了天氣預(yù)報(bào)诲锹,衣服10分鐘前已經(jīng)收好了”或者“那你媽是人還是妖”或者“和你奶奶一個(gè)姓”等等繁仁,我這種健全的心理叫 做“健壯的數(shù)據(jù)報(bào)處理,能夠抵御任何攻擊”归园。
孫爺爺癱了之后黄虱,小不點(diǎn)終于不再給小暗打電話了,因?yàn)闊o(wú)論他怎么打?qū)Ψ蕉际敲σ粲褂眨@種現(xiàn)象叫做“拒絕服務(wù)”捻浦,所以小明的做法還有一個(gè)名字叫做“拒絕服務(wù)攻擊”。
小明終于安靜了幾天桥爽,朱灿、…
幾天后,小明的院子來(lái)了一個(gè)美麗的女孩聚谁,名字叫做小麗母剥,小明很喜歡她(小小年紀(jì)玩什么早戀V团怠)可是小麗有個(gè)很帥的男朋友形导,小明干瞪眼沒辦法环疼。當(dāng)然這里還是要遵循上面的原則:小麗是不能出院子的。那個(gè)男的想泡小麗自然只能打電話朵耕,于是小明又蠢蠢欲動(dòng)了:
還記得王爺爺是院子的電話總管嗎炫隶?他之所以能管理電話是因?yàn)樗幸粋€(gè)通訊錄,因?yàn)橥粋€(gè)院子可能有2個(gè)孩子都叫小明阎曹,靠名字無(wú)法區(qū)分伪阶,所以通訊錄上每一行只有兩項(xiàng):
門牌電話
一號(hào)門 1234567 (這個(gè)是小明的)
二號(hào)門 7654321 (這個(gè)是小麗的)
……
王爺爺記性不好,但這總不會(huì)錯(cuò)了吧(同一個(gè)院子不會(huì)有2個(gè)“二號(hào)門”吧)处嫌?每次打電話人家都要說(shuō)出要找的電話號(hào)碼栅贴,然后通過(guò)通訊錄去院子里面敲門, 比如人家說(shuō)我找“1234567”熏迹,于是王爺爺一比較檐薯,哦,是一號(hào)門的注暗,他就去敲一號(hào)門“聽電話”坛缕,如果是找“7654321”,那他就找二號(hào)門“聽電 話”捆昏。
這里的電話號(hào)碼就是傳說(shuō)中的“IP地址”
這里的門牌號(hào)就是傳說(shuō)中的網(wǎng)卡的’MAC‘地址(每一塊網(wǎng)卡的MAC地址都是不一樣的赚楚,這是網(wǎng)卡的制造商寫死在網(wǎng)卡的芯片中的)
小明心里想“奶奶的,老子泡不到你也別想泡”骗卜,于是他打起了王爺爺通訊錄的主意宠页,經(jīng)過(guò)細(xì)心的觀察,周密的準(zhǔn)備寇仓,他終于發(fā)現(xiàn)王爺爺有尿頻的毛灿禄省(畢竟是老人啊…),終于在一個(gè)月黑風(fēng)高的白天焚刺,王爺爺去上廁所了敛摘,小明偷偷的摸進(jìn)傳達(dá)室,小心翼翼的改了王爺爺?shù)耐ㄓ嶄洝?br>
過(guò)了幾天乳愉,小麗的男朋友又給小麗打來(lái)了電話兄淫,對(duì)方報(bào)的電話是“7654321”,王爺爺一看通訊錄蔓姚,靠:
門牌電話
一號(hào)門 1234567 (這個(gè)是小明的)
一號(hào)門 7654321 (注意:這個(gè)原來(lái)是小麗的捕虽,但是被小明改了)
……
王爺爺不知道改了啊,于是就去找一號(hào)門的小明了坡脐,小明心里這個(gè)美啊泄私,他以小麗父親的口吻嚴(yán)厲的教訓(xùn)了那個(gè)男的和小麗之間不正當(dāng)?shù)哪信P(guān)系,結(jié)果那個(gè)男的恭恭敬敬的掛了電話。當(dāng)然小麗并不知道整個(gè)事情的發(fā)生…
這里小明的行為叫做“ARP欺騙”(因?yàn)樵趯?shí)際的網(wǎng)絡(luò)上是通過(guò)發(fā)送ARP數(shù)據(jù)包來(lái)實(shí)現(xiàn)的晌端,所以叫做“ARP欺騙”)捅暴,王爺爺?shù)耐ㄓ嶄浗凶觥癆RP表”
這里要注意:王爺爺現(xiàn)在有兩個(gè)通訊錄了,一個(gè)是記錄每個(gè)院子傳達(dá)室電話的本本咧纠,叫做“路由表”蓬痒,一個(gè)是現(xiàn)在說(shuō)的記錄院子里面詳細(xì)信息的本本,叫做“ARP表”漆羔。
有句名言是“人們總是在追求完美的梧奢,盡管永遠(yuǎn)也做不到”(請(qǐng)記住這句話,因?yàn)檫@是一個(gè)大名人–也就是我演痒,說(shuō)的)
王爺爺?shù)闹贫戎杏幸粭l是這么寫的“每個(gè)月要重新檢查一下門牌號(hào)和電話的對(duì)應(yīng)本(也就是ARP表)”亲轨,這個(gè)動(dòng)作叫做“刷新ARP表”,每個(gè)月的時(shí)間限 制叫做“刷新ARP表的周期”鸟顺。這樣小明為了讓那個(gè)男的永遠(yuǎn)不能找到小麗瓶埋,之后每個(gè)月都要偷偷改一次那個(gè)通訊錄,不過(guò)這樣也是不得不做的事罢锘Α养筒!
補(bǔ)充一點(diǎn),小明是很聰明的端姚,如果通訊錄(ARP表)被改成了這樣:
門牌(MAC)電話(IP)
一號(hào)門 1234567 (這個(gè)是小明的)
二號(hào)門 1234567 (注意:這個(gè)被小明改了晕粪,但是他一時(shí)頭暈改錯(cuò)了)
……
就會(huì)是計(jì)算機(jī)就會(huì)彈出一個(gè)對(duì)話框提示“出現(xiàn)重復(fù)的IP地址”,最終會(huì)導(dǎo)致王爺爺不知所措渐裸,于是通知一號(hào)門和二號(hào)門巫湘,你們的電話重復(fù)了。這樣小麗就知道有人在破壞她的好事昏鹃,這個(gè)現(xiàn)象叫做“騙局被揭穿了”
小不點(diǎn)知道了小明偷聽他和小暗的電話尚氛,于是就和小暗約定好了密碼。小不點(diǎn)在家里把要說(shuō)的加密了之后告訴小暗洞渤。土豆-〉星期三阅嘶,地瓜-〉請(qǐng)客,笨蛋-〉小不點(diǎn)家载迄。于是小不點(diǎn)告訴小暗:土豆笨蛋地瓜讯柔。小明聽了?护昧?魂迄?不懂……郁悶了……這是加密。
除此之外惋耙,小麗也知道了小明改他家的電話號(hào)碼了捣炬。于是王爺爺就登門一個(gè)一個(gè)把電話和門牌號(hào)記下來(lái)熊昌。并且藏起來(lái)不允許外人修改,只能自己有鑰匙(密 碼)湿酸。這是IP地址和MAC地址綁定婿屹。當(dāng)有人改了電話號(hào)碼的時(shí)候,就得找王爺爺改稿械。麻煩是麻煩了,但是安全了冲粤。不過(guò)小明偷偷的把王爺爺?shù)蔫€匙偷配了一把 (盜竊密碼成功)美莫,于是他還可以修改。這樣么梯捕,就這樣了厢呵。