一、前言
如果你現(xiàn)在正在看我的這篇文章,那說明你已經(jīng)連接上了互聯(lián)網(wǎng)。說到互聯(lián)網(wǎng),你一定聽說 ip 地址這個概念,你知道 ip 地址是做什么的嗎?與之而來的還有公網(wǎng) ip ,私網(wǎng) ip ,你知道有什么區(qū)別嗎?
二、計算機(jī)之間點對點的交流
正常情況下,你和我都有一臺電腦,但是一臺電腦所能做的事情是有限的,可能兩臺電腦之間為了做更多的事情,需要數(shù)據(jù)交互,我們可以通過U盤作為媒介,進(jìn)行數(shù)據(jù)交換,但這樣效率實在是太慢了,于是,為了提高效率,有人想到了一個好辦法,我們在兩臺電腦之間插上數(shù)據(jù)線,通過數(shù)據(jù)線進(jìn)行數(shù)據(jù)交互
有了這根數(shù)據(jù)線,或者叫網(wǎng)線,這個兩臺電腦就能進(jìn)行數(shù)據(jù)交互了,但是,如果不止有兩臺電腦呢?有多臺電腦的情況下,又該這么牽網(wǎng)線呢?
你發(fā)現(xiàn)了,如果每一臺機(jī)器為了和其他機(jī)器通訊,那就得和那臺機(jī)器建立連接,如果隨著機(jī)器越來越多,那網(wǎng)線數(shù)目會是多么復(fù)雜,這肯定是無法接收的。
三、交換機(jī)
為了解決計算機(jī)之間點對點交流的復(fù)雜性,我們引入的交換機(jī)的概念
有了交換機(jī)之后,由交換機(jī)去分發(fā)來自每臺機(jī)器的數(shù)據(jù)。
這時候又有新的問題,在點對點的數(shù)據(jù)連接上,兩臺電腦如果想進(jìn)行數(shù)據(jù)交互,只需從眾多的數(shù)據(jù)線中找到對應(yīng)的主機(jī)的數(shù)據(jù)線,但現(xiàn)在都發(fā)給交換機(jī)了。交換機(jī)應(yīng)該怎么去分發(fā)數(shù)據(jù)呢?這就像應(yīng)該沒有填清楚具體地址的包裹一樣,交換機(jī)就像快遞公司,你給了快遞公司,沒給地址,那快遞公司就不知道應(yīng)該把包裹發(fā)給誰。快遞公司只要有快遞的地址就知道該把包裹發(fā)哪兒,交換機(jī)也一樣,我們可以為每一臺機(jī)器分配一個 ip 地址。
有了IP地址之后,只需在發(fā)送的數(shù)據(jù)包里面加上對應(yīng)主機(jī)的IP地址,那交換機(jī)就能根據(jù)具體的IP地址把數(shù)據(jù)發(fā)送到對應(yīng)的機(jī)器。
四、局域網(wǎng)到廣域網(wǎng)
通過交換機(jī),我們可以讓連接到交換機(jī)的計算機(jī)進(jìn)行數(shù)據(jù)交流,假如這幾臺機(jī)器是你學(xué)校的電腦,你的學(xué)校想和隔壁學(xué)校進(jìn)行業(yè)務(wù)合作,就需要彼此的電腦也進(jìn)行數(shù)據(jù)交流,正好隔壁的電腦也是用的交換機(jī)進(jìn)行數(shù)據(jù)交流,于是我們只要把兩個學(xué)校的交換機(jī)連接,那兩邊的電腦就能相互訪問了。
通過連接兩臺交換機(jī),讓兩邊的電腦能數(shù)據(jù)交流,之后如果還要加更多的局域網(wǎng),那在把彼此的交換機(jī)進(jìn)行連接
隨著局域網(wǎng)的交換機(jī)優(yōu)越來越多,交換機(jī)也像之前計算機(jī)之間點對點的連接那樣復(fù)雜,于是在交換機(jī)之間又放入新的交換機(jī)。
就是這樣,交換機(jī)越來越多,直到覆蓋全世界,你只需進(jìn)入其中任意一個節(jié)點,就能訪問到全世界任意一條同樣連接到網(wǎng)絡(luò)的節(jié)點,這就構(gòu)成了廣域網(wǎng)。你可以理解為:
廣域網(wǎng)就是無數(shù)的局域網(wǎng)的結(jié)合。
很明顯,搭建這些網(wǎng)絡(luò)肯定都是需要一筆不小的資金,搭建這些網(wǎng)絡(luò)的公司被稱為 ISP 互聯(lián)網(wǎng)服務(wù)供應(yīng)商,大家所熟悉的移動,電信和聯(lián)通就是 ISP 供應(yīng)商,他們通過為用戶提供網(wǎng)絡(luò)賺取費(fèi)用。
五、IPV4
互聯(lián)網(wǎng)的每一臺機(jī)器都是需要一個 IP 地址才能彼此訪問的,那首先我們得來聊聊 IP 地址的構(gòu)成。IP 地址一般說的是 IPV4 的 IP 地址,它是由 32 位構(gòu)成,那 IP 地址能用的組合就是 2 的 32 次方,大于等于 42.28 億。
為了方便記憶和輸入,將每 8 個二進(jìn)制分為一組,共 4 組,在轉(zhuǎn)換為 10 進(jìn)制
同時,還會對 IP 地址進(jìn)行分類,一些地址作為特殊用途
最后真正可用的地址可能還沒有 42 億個。已知全球一共有 70 多億的人口,雖然不是每個人都會訪問互聯(lián)網(wǎng),但是有很多人并不止一臺設(shè)備,一個人可能有多臺手機(jī),電腦等等,如果要給每臺設(shè)備都去分配一個 IP ,那這 42 億的 IP 地址夠用嗎?完全不夠。
六、NAT 網(wǎng)絡(luò)地址轉(zhuǎn)換
為了解決IP不夠用的問題我們使用了一項新的技術(shù),NAT 網(wǎng)絡(luò)地址轉(zhuǎn)換。假如有五臺計算機(jī),他們的IP地址是192.168.0.1----192.168.0.5,他們接入了同一臺交換機(jī),或者叫路由器,他們接入的這臺交換機(jī)的廣域網(wǎng)IP是6.6.6.6
如果這五臺機(jī)器要向一臺 8.8.8.8 的服務(wù)器發(fā)送數(shù)據(jù),那 NAT 就會把這幾臺計算機(jī)原有的 ip 轉(zhuǎn)換成 6.6.6.6 的 ip 向 8.8.8.8 發(fā)送數(shù)據(jù),實現(xiàn) 5 臺設(shè)備共用一個 IP 的效果 。
如果 8.8.8.8 這個交換機(jī)下面也掛載了很多設(shè)備,那這五臺服務(wù)器都是按照8.8.8.8這個機(jī)器發(fā)送的,那有怎么發(fā)送到8.8.8.8下面掛載的具體設(shè)備呢?
七、端口映射
為了解決上面的問題,我們引入了一個新的概念,端口映射。我們可以在IP地址的后面加上一個端口,如圖
比如 192.168.0.1 和 6.6.6.6 的 1000 端口綁定,另一邊的 192.168.0.1 和 8.8.8.8 的 500 端口綁定,這樣,如果 6.6.6.6 下掛載的機(jī)器想訪問 8.8.8.8 下掛載的機(jī)器,只需要加上對應(yīng)的端口就行了。
八、公網(wǎng)IP和私有IP
你如果打開 cmd ,輸入 ipconfig 查看IP地址
你會看的ip地址是 192.168 開頭的,為什么?剛剛提到,ip地址是不夠用的,但為了使大多數(shù)的機(jī)器都能上網(wǎng),我們通常是多臺機(jī)器共用一個公網(wǎng)ip,你去百度搜索 ip 查詢,
就能看見你當(dāng)前設(shè)備所掛載的公網(wǎng)ip了。現(xiàn)在知道為什么很多 ip 都是 192.168 開頭的了吧?因為這是掛載到了一個小的中轉(zhuǎn)設(shè)備下的 C 類私有 ip ,在這個私類 ip 下依賴轉(zhuǎn)換器的公網(wǎng) ip 上網(wǎng)。
打個比如,公網(wǎng) ip 就是你小區(qū)的名稱,私網(wǎng) ip 就是你住的樓層單元,假設(shè)全國小區(qū)名字都不重復(fù),那根據(jù)小區(qū)名字,就可以找到你的大概位置,這就相當(dāng)于根據(jù)公網(wǎng)IP定位到你具體的局域網(wǎng),但是為了知道你具體位置,那還需要知道你是這個小區(qū)幾單元幾號,小區(qū)的幾單元幾號這玩意兒每個小區(qū)都有,這就相當(dāng)于私網(wǎng)IP,很多機(jī)器的私網(wǎng)IP都是重復(fù)的。
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
6808瀏覽量
88743 -
互聯(lián)網(wǎng)
+關(guān)注
關(guān)注
54文章
11073瀏覽量
102614 -
IP
+關(guān)注
關(guān)注
5文章
1610瀏覽量
149246
原文標(biāo)題:IP地址到底是什么?
文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論