在茫茫的互聯(lián)網(wǎng)海洋中,要找到一臺計算機非常不容易贺待,有三個要素必須具備徽曲,它們分別是 IP 地址、MAC 地址和端口號麸塞。
IP地址
IP地址是 Internet Protocol Address 的縮寫秃臣,譯為“網(wǎng)際協(xié)議地址”。
目前大部分軟件使用 IPv4 地址,但 IPv6 也正在被人們接受奥此,尤其是在教育網(wǎng)中弧哎,已經(jīng)大量使用。
一臺計算機可以擁有一個獨立的 IP 地址稚虎,一個局域網(wǎng)也可以擁有一個獨立的 IP 地址(對外就好像只有一臺計算機)撤嫩。對于目前廣泛使用 IPv4 地址,它的資源是非常有限的蠢终,一臺計算機一個 IP 地址是不現(xiàn)實的序攘,往往是一個局域網(wǎng)才擁有一個 IP 地址。
在因特網(wǎng)上進行通信時寻拂,必須要知道對方的 IP 地址程奠。實際上數(shù)據(jù)包中已經(jīng)附帶了 IP 地址,把數(shù)據(jù)包發(fā)送給路由器以后祭钉,路由器會根據(jù) IP 地址找到對方的地里位置瞄沙,完成一次數(shù)據(jù)的傳遞。路由器有非常高效和智能的算法慌核,很快就會找到目標計算機距境。
MAC地址
現(xiàn)實的情況是,一個局域網(wǎng)往往才能擁有一個獨立的 IP遂铡;換句話說肮疗,IP 地址只能定位到一個局域網(wǎng),無法定位到具體的一臺計算機扒接。這可怎么辦呀伪货?這樣也沒法通信啊。
其實钾怔,真正能唯一標識一臺計算機的是 MAC 地址碱呼,每個網(wǎng)卡的 MAC 地址在全世界都是獨一無二的。計算機出廠時宗侦,MAC 地址已經(jīng)被寫死到網(wǎng)卡里面了(當然通過某些“奇巧淫技”也是可以修改的)愚臀。局域網(wǎng)中的路由器/交換機會記錄每臺計算機的 MAC 地址。
MAC 地址是 Media Access Control Address 的縮寫矾利,直譯為“媒體訪問控制地址”姑裂,也稱為局域網(wǎng)地址(LAN Address),以太網(wǎng)地址(Ethernet Address)或物理地址(Physical Address)男旗。
數(shù)據(jù)包中除了會附帶對方的 IP 地址舶斧,還會附帶對方的 MAC 地址,當數(shù)據(jù)包達到局域網(wǎng)以后察皇,路由器/交換機會根據(jù)數(shù)據(jù)包中的 MAC 地址找到對應(yīng)的計算機茴厉,然后把數(shù)據(jù)包轉(zhuǎn)交給它泽台,這樣就完成了數(shù)據(jù)的傳遞。
端口號
有了 IP 地址和 MAC 地址矾缓,雖然可以找到目標計算機怀酷,但仍然不能進行通信。一臺計算機可以同時提供多種網(wǎng)絡(luò)服務(wù)嗜闻,例如 Web 服務(wù)(網(wǎng)站)蜕依、FTP 服務(wù)(文件傳輸服務(wù))、SMTP 服務(wù)(郵箱服務(wù))等泞辐,僅有 IP 地址和 MAC 地址笔横,計算機雖然可以正確接收到數(shù)據(jù)包,但是卻不知道要將數(shù)據(jù)包交給哪個網(wǎng)絡(luò)程序來處理咐吼,所以通信失敗。
為了區(qū)分不同的網(wǎng)絡(luò)程序商佑,計算機會為每個網(wǎng)絡(luò)程序分配一個獨一無二的端口號(Port Number)锯茄,例如,Web 服務(wù)的端口號是 80茶没,F(xiàn)TP 服務(wù)的端口號是 21肌幽,SMTP 服務(wù)的端口號是 25。
端口(Port)是一個虛擬的抓半、邏輯上的概念喂急。可以將端口理解為一道門笛求,數(shù)據(jù)通過這道門流入流出廊移,每道門有不同的編號,就是端口號探入。如下圖所示: