計算機網絡隨談

瞎扯一會

徐小黑剛開始學習計算機網絡時是看mooc上的課程,感覺好難懂,理解也不深,後面我就先大致瞭解一下網絡運行的原理,拋去那些難的,細節的東西,大概明白了其實計算機網絡就是拆包和裝包,還有路由器其實就是個騙子,能夠偷天換日,他掌握着欺騙僞裝神技(NAT技術),巧妙地解決了IP地址枯竭的問題。等等。。。
瞭解這些之後我在慢慢一點一點去了解深的,將網絡七層一層一層剖開,學習各種協議還有服務,漸漸的就明白了計算機是怎麼回事。
好像是我的初中老師說的,讀一本書就是從薄到厚,然後再從厚到薄。我現在認爲好正確,先從大綱開始入手,一點一點深入,最後到了你真正理解一本書的時候,你自己就又能將所學到的所有歸納總結成一張紙。
不知道從哪裏入手學習計算機網絡的同學,可以先去了解一下家裏的路由器怎麼工作?還有如何從路由器上再裝一個路由器?
之前剛裝寬帶的時候,由於客廳的路由器和我房間隔了好幾堵牆,我就不得不再買一個路由器,自己學着配置路由器,那一次也讓我第一次接觸到計算機網絡,對之後的學習也帶來一點小幫助。

現在要說我們最離不開的就是網絡,離開了網絡,就感覺整個世界空蕩蕩的,什麼都幹不了,很多同學肯定也配置過自己家裏的或者宿舍的路由器,修改過WiFi的密碼,但絕大數人肯定不知道原理。那到底什麼是Internet? 爲什麼你能上網?你能馬上知道地球任何地方的新聞?接下來我們簡單聊聊計算機網絡的世界。

我們從淺到深慢慢深入,希望同學們能有收穫。

1, 局域網和廣域網

局域網(Local Area Network),簡稱LAN,是指在某一區域內由多臺計算機互聯成的計算機組。“某一區域”指的是同一辦公室、同一建築物、同一公司和同一學校等,一般是方圓幾千米以內。局域網是封閉型的,可以由辦公室內的兩臺計算機組成,也可以由一個公司內的上千臺計算機組成。
通俗點說, 局域網其實就是小範圍的計算機網絡,比如你家的路由器,和靠這個路由器上網的所有設備就構成了一個小的局域網。
廣域網(Wide Area Network),簡稱WAN,是一種跨越大的、地域性的計算機網絡的集合。通常跨越省、市,甚至一個國家。廣域網包括大大小小不同的子網,子網可以是局域網,也可以是小型的廣域網。

廣域網是較局域網而言,例如城域網,比局域網覆蓋範圍大的網絡.
因特網internet就是我們現在常說的互聯網了,是世界上最大的網絡體系了。

  • 路由器上有LAN口WAN口,我們將路由器比喻成我們家局域網的網絡關卡boss,他控制着我們是否能上網,我們想要上網就必須通過路由器這一關,這就是爲什麼我們有時候也將路由器叫做網關路由器。家裏的所有電腦都是連接在LAN口,LAN口有很多個,如果你家客廳的電腦想和你房間的電腦通信是不需要聯網的,因爲他們是在同一個局域網下。
    但是WAN口只有一個,我們想要上傳東西到互聯網或者從互聯網上下載東西,就是通過這個口。

2, 什麼是IP地址?

有很多人把 IP地址比喻成身份證,我覺得這是不太準確的,我們平時的所指的ip地址往往是私有ip地址,這個地址只是在局域網裏有效,而放在全世界是無效的,我倒覺得IP地址其實就像每個人的名字,例如你叫張偉,你朋友在大街上喊你的名字,可能有好多人回頭,可能好多家庭(局域網裏)都有一個叫做張偉的電腦,所以ip地址是局域網有效,我們設置路由器時輸入到瀏覽器的192.168.1.1 就是路由器在局域網的名字,他還有一個公網IP(在互聯網中路由器的名稱),具體的後面介紹到。

  • ip地址由兩部分組成 = 網絡號 + 主機號
  • 網絡號就是同一個網絡下所有主機共有的
  • 這裏另外提一個概念子網掩碼(用來區分網絡號的,是從左到右連續的1)例如: 255.255.255.0,因爲這裏是十進制,轉換成二進制是24個1,所以也可以直接寫24
  • 主機號就是同一個網絡下各個主機特有的
  • 子網掩碼(NETMASK)& IP地址 = 網絡號(做與運算可以得到網絡號)
    //因爲1&x = x,0&x = 0,所以從ip地址中提取出網絡號
  • 下面給出例子:
    拿路由器的192.168.1.1開刷
    查詢你的路由器可以知道子網掩碼是255.255.255.0
    那麼路由器的網絡號就是192.168.1.0

如果子網掩碼是255.255.0.0
網絡號就是192.168.0.0

  • 另外還有一個廣播地址(就是這個地址是發給局域網內所有的主機的),網絡號0的部分(主機號部分)全部改成1, 第一個例子廣播地址就是192.168.1.255, 第二個例子就是192.168.255.255

IP地址分類這裏就不說了,自己可以百度看看,下面講一些特殊的地址,
特殊IP地址

  • 0.0.0.0~0.255.255.255 嚴格說來,0.0.0.0已經不是一個真正意義上的 IP地址了。它表示的是這樣一個集合:所有不清楚的主機和目的網絡。

  • 127.0.0.1(127.0.0.1~127.0.0.255) 本機地址,主要用於測試。

  • 169.254.x.x 如果你的主機使用了DHCP功能自動獲得一個IP地址,那麼你的DHCP服務器發生故障

  • 公網IP地址: 除了私有IP地址和特殊用途的IP地址

3, MAC地址

mac地址就是計算機的物理地址,這個就可以比喻成pc的身份證號碼,他是全世界唯一的,終生不變,準確點講,這個物理地址是計算機所帶的網卡的標識符。
每一張網卡在“出生”時都有一個獨一無二的MAC地址,是網卡的ID。相對於物理MAC地址而言,IP地址也叫做軟件地址。

  • 需要注意的是網卡是工作在數據鏈路層。這個在後面的OSI 7層模型中會說到。

4, DHCP服務器

電腦是怎麼獲取自己在局域網裏的私有IP地址的?
這就需要DHCP服務器了,DHCP叫做動態主機配置協議,在家庭局域網內DHCP服務器就是我們的路由器,所以之前說路由器是boss,他決定我們能不能上網,當然他還有其他的通天的本領,這個後面會介紹。

下面我們登陸路由器設置網站192.168.1.1,打開DHCP服務,發現有一個地址池,這個地址池就是給路由器下所有設備分配的IP地址範圍。

在這裏插入圖片描述

  • 注意: 如果我們沒有手動設置IP地址,網關,DNS,每次電腦重啓後都要重複在局域網內廣播(就是所有機器都會收到,但是如果發現不是給自己的數據,就會丟棄),然後路由器收到後就會分配給電腦一個IP地址。

5, DNS和ARP

DNS叫做域名服務器: 用來將域名轉換成IP地址,
DNS服務器分成好幾級,國內最大的DNS服務器是114.114.114.114,這個服務器也相對比較穩定,
我們訪問哪個網站時,往往不會去記該網站的公網IP,物理地址更不用說了,我們往往記住的是域名,例如baidu.com ,但是計算機之間通信是必須通過IP地址才能通信,所以必須通過DNS服務器將域名解析成IP地址,我們才能訪問到目的網站。
ARP叫做地址解析協議: 用來將IP地址翻譯成MAC地址

6, 路由器的本領

路由器爲什麼叫路由器?就是因爲他是路口,數據到他這,他需要選擇道路決定數據發到哪裏。
前面提到了路由器又叫網關服務器,又是DHCP服務器,但是他還有一個最厲害的本領,就是NAT轉換

前面提到過LAN口和WAN口,其實路由器有兩個IP地址,一個就是LAN口 IP (內網ip,就是在局域網內標識路由器自己的地址,路由器下所有聯網設備的ip都和這個ip在一個網段內),一個就是WAN口 ip (外網公有地址,就是在互聯網世界裏的能讓其他電腦找到的地址),當我們想向局域網外的世界發送數據時,路由器就會將我們電腦的IP地址和端口號替換成他自己的IP地址和端口,並記錄在一個NET轉換表內,等數據發送回本局域網內的哪臺機器, 路由器就可以根據這個表知道是給哪臺pc。
在這裏插入圖片描述

  • 這裏必須注意:路由器的外網IP和內網IP是不能在一個網段內。
  • 還有我們這裏簡化處理,可能我們家庭的路由器上面還有多層路由器,他們都會做NAT欺騙,所以我們路由器的的公網IP可能依舊是私有ip, 如果需要真正的公網IP ,你就得去找你家寬帶的運營商了。

7, 網絡模型

上面所說的都沒涉及到網絡模型,還有數據在網絡中是如何傳輸的。接下來介紹模型。

在這裏插入圖片描述

  • OSI七層網絡模型是一個參考模型,是一個把網絡通信在邏輯上的定義,也可以理解成爲定義了通用的網絡通信規範。而我們的數據在網絡中傳輸的過程,實際上就是如下圖的封裝和解封裝的過程,發送方通過各種封裝處理,把數據 轉換成比特流的形式,比特流在信號傳輸的硬件媒介中傳輸,接收方再把比特流進行解封裝處理。
  • osi說實話是幫助我們理解的模型,但是過於複雜,就出現了5層簡化模型,這個模型也是幫助我們理解的
  • 現在真正的實行的標準其實是4層模型。

在這裏插入圖片描述

  • 每層都有自己的協議,在我看來,7層模型就像一個快遞公司,然後每層上的各種協議就像掌握着不同工作的快遞員,在發送端,這些快遞員負責裝包,然後寫上自己該寫的信息,到了接收端,這些協議就負責將數據包一層一層地拆開,最後獲得用戶真正需要的數據給應用程序。

上面有提到端口,端口就是區分數據是發給哪個應用的。

  • 舉個例子,我的朋友用微信給我發了一條hello消息,這個數據經過模型各層的封裝後,然後達到我的電腦,經過拆包到達傳輸層和應用層之間,這之間就有很多端口,有微信的端口,有QQ端口,但是數據包中有記錄着是給微信的端口號,所以hello不會傳給QQ,而是給微信。

今天就談到這,協議在下一篇博客中介紹,還有三次握手,四次揮手。敬請期待。。。。

因爲計算機網絡過於複雜,小黑寫的邏輯也不太好,還有如果有錯誤的地方希望大家指出。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章