第一部分 整體概述
HTTP 請(qǐng)求消息
URL: Uniform Resource Locator,統(tǒng)一資源定位符。
FTP: File Transfer Protocol, 文件傳送協(xié)議。 這是一種在上傳、下載文件時(shí)使用的協(xié)議。使用 FTP 協(xié)議來(lái)傳送文件的程序也被叫作 FTP。
常見(jiàn)的URL分類(lèi)
日常用的最多的是HTTP: Hypertext Transfer Protocol,超文本傳送協(xié)議, 但也有其他一些,如下圖:
http協(xié)議
HTTP 協(xié)議定義了客戶(hù)端和服務(wù)器之間交互的消息內(nèi)容和步驟。
大致過(guò)程如下,客戶(hù)端請(qǐng)求,服務(wù)器返回相應(yīng)的數(shù)據(jù)。
如何訪(fǎng)問(wèn)服務(wù)器中,特定的資源?看下邊的URL圖解
主要方法
有了整體的大致流程,也有了拆分URL的圖解,就看下有哪些方法吧,瀏覽器訪(fǎng)問(wèn)屬于GET.
URI: Uniform Resource Identifier,統(tǒng)一資源標(biāo)識(shí)符。
第二部分 IP地址
該部分摘錄自《IP地址詳解》,詳情請(qǐng)參看原文。
IP地址分類(lèi)
IP地址(Internet Protocol Address),縮寫(xiě)為IP Adress,是一種在Internet上的給主機(jī)統(tǒng)一編址的地址格式,也稱(chēng)為網(wǎng)絡(luò)協(xié)議(IP協(xié)議)地址。它為互聯(lián)網(wǎng)上的每一個(gè)網(wǎng)絡(luò)和每一臺(tái)主機(jī)分配一個(gè)邏輯地址,常見(jiàn)的IP地址,分為IPv4與IPv6兩大類(lèi),當(dāng)前廣泛應(yīng)用的是IPv4,目前IPv4幾乎耗盡,下一階段必然會(huì)進(jìn)行版本升級(jí)到IPv6;如無(wú)特別注明,一般我們講的的IP地址所指的是IPv4。
IP地址分A、B、C、D、E五類(lèi),其中A、B、C這三類(lèi)是比較常用的IP地址,D、E類(lèi)為特殊地址。
IP 地址是一串 32 比特的數(shù)字,按照 8 比特(1 字節(jié))為一組分成 4 組,分別用十進(jìn)制表示 然后再用圓點(diǎn)隔開(kāi)。
在計(jì)算機(jī)二進(jìn)制中,1個(gè)字節(jié) = 8位 = 8bit(比特)
Ip地址匯總
注: 為何減去2?
在計(jì)算機(jī)網(wǎng)絡(luò)中,主機(jī)ID全部為0的地址為網(wǎng)絡(luò)地址,而主機(jī)ID全部為1的地址為廣播地址,這2個(gè)地址是不能分配給主機(jī)用的。
公網(wǎng)和私網(wǎng)IP地址
公網(wǎng)IP地址
公有地址分配和管理由Inter NIC(Internet Network Information Center 因特網(wǎng)信息中心)負(fù)責(zé)。各級(jí)ISP使用的公網(wǎng)地址都需要向Inter NIC提出申請(qǐng),有Inter NIC統(tǒng)一發(fā)放,這樣就能確保地址塊不沖突。
私網(wǎng)IP地址
創(chuàng)建IP尋址方案的人也創(chuàng)建了私網(wǎng)IP地址。這些地址可以被用于私有網(wǎng)絡(luò),在Internet沒(méi)有這些IP地址,Internet上的路由器也沒(méi)有到私有網(wǎng)絡(luò)的路由表。
A類(lèi):10.0.0.0 255.0.0.0,保留了1個(gè)A類(lèi)網(wǎng)絡(luò)。
B類(lèi):172.16.0.0 255.255.0.0~172.31.0.0 255.255.0.0,保留了16個(gè)B類(lèi)網(wǎng)絡(luò)。
C類(lèi):192.168.0.0 255.255.255.0~192.168.255.0 255.255.255.0,保留了256個(gè)C類(lèi)網(wǎng)絡(luò)。
PS:私網(wǎng)地址訪(fǎng)問(wèn)Internet需要做NAT或PAT網(wǎng)絡(luò)地址轉(zhuǎn)換
子網(wǎng)掩碼
引子
IP地址在設(shè)計(jì)時(shí)就考慮到地址分配的層次特點(diǎn),將每個(gè)IP地址都分割成網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)兩部分,以便于IP地址的尋址操作。
如何確定:IP地址的網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)各是多少位呢?
那就了解下子網(wǎng)掩碼
定義
子網(wǎng)掩碼(subnet mask)是每個(gè)使用互聯(lián)網(wǎng)的人必須要掌握的基礎(chǔ)知識(shí),只有掌握它,才能夠真正理解TCP/IP協(xié)議的設(shè)置。
子網(wǎng)掩碼——屏蔽一個(gè)IP地址的網(wǎng)絡(luò)部分的“全1”比特模式。對(duì)于A類(lèi)地址來(lái)說(shuō),默認(rèn)的子網(wǎng)掩碼是255.0.0.0;對(duì)于B類(lèi)地址來(lái)說(shuō)默認(rèn)的子網(wǎng)掩碼是255.255.0.0;對(duì)于C類(lèi)地址來(lái)說(shuō)默認(rèn)的子網(wǎng)掩碼是255.255.255.0。
利用子網(wǎng)掩碼可以把大的網(wǎng)絡(luò)劃分成子網(wǎng),即VLSM(可變長(zhǎng)子網(wǎng)掩碼),也可以把小的網(wǎng)絡(luò)歸并成大的網(wǎng)絡(luò)即超網(wǎng)。
規(guī)則
子網(wǎng)掩碼的長(zhǎng)度也是32位,左邊是網(wǎng)絡(luò)位,用二進(jìn)制數(shù)字“1”表示,1的數(shù)目等于網(wǎng)絡(luò)位的長(zhǎng)度;右邊是主機(jī)位,用二進(jìn)制數(shù)字“0”表示,0的數(shù)目等于主機(jī)位的長(zhǎng)度。
目的: 是為了讓掩碼與ip地址做按位與運(yùn)算時(shí)用0遮住原主機(jī)數(shù),而不改變?cè)W(wǎng)絡(luò)段數(shù)字,而且很容易通過(guò)0的位數(shù)確定子網(wǎng)的主機(jī)數(shù)
為何要用子網(wǎng)掩碼?
子網(wǎng)掩碼可以分離出IP地址中的網(wǎng)絡(luò)地址和主機(jī)地址,那為什么要分離呢?
因?yàn)閮膳_(tái)計(jì)算機(jī)要通訊,首先要判斷是否處于同一個(gè)廣播域內(nèi),即網(wǎng)絡(luò)地址是否相同。
如果網(wǎng)絡(luò)地址相同,表明接受方在本網(wǎng)絡(luò)上,那么可以把數(shù)據(jù)包直接發(fā)送到目標(biāo)主機(jī),
否則就需要路由網(wǎng)關(guān)將數(shù)據(jù)包轉(zhuǎn)發(fā)送到目的地。
設(shè)IP地址為192.168.10.2,子網(wǎng)掩碼為255.255.255.240,那么子網(wǎng)掩碼是怎樣來(lái)區(qū)分網(wǎng)絡(luò)地址和主機(jī)地址的呢。
主機(jī)地址為:0.0.0.2(將掩碼取反,然后與運(yùn)算)
子網(wǎng)掩碼和ip地址的關(guān)系
子網(wǎng)掩碼是用來(lái)判斷任意兩臺(tái)計(jì)算機(jī)的IP地址是否屬于同一子網(wǎng)絡(luò)的根據(jù)。
And按位與運(yùn)算:
與運(yùn)算是計(jì)算機(jī)中一種基本的邏輯運(yùn)算方式,符號(hào)表示為&,也可以表示為 and。
參加運(yùn)算的兩個(gè)數(shù)據(jù),按二進(jìn)制位進(jìn)行“與”運(yùn)算。
運(yùn)算規(guī)則:0&0=0;0&1=0;1&0=0;1&1=1;
即:兩位同時(shí)為“1”,結(jié)果才為“1”,否則為0
網(wǎng)絡(luò)地址計(jì)算小技巧:IP地址和子網(wǎng)掩碼做與運(yùn)算,把IP地址的主機(jī)位直接歸0,就快速得到網(wǎng)絡(luò)地址。所以只要一看到IP地址和子網(wǎng)掩碼,就能馬上確認(rèn)網(wǎng)絡(luò)地址。
子網(wǎng)掩碼的表示方法
①、點(diǎn)分十進(jìn)制表示法
二進(jìn)制轉(zhuǎn)換十進(jìn)制,每8位用點(diǎn)號(hào)隔開(kāi)
例如:子網(wǎng)掩碼二進(jìn)制11111111.11111111.11111111.00000000,表示為255.255.255.0
②、CIDR斜線(xiàn)記法
IP地址/n
例1:192.168.1.100/24,其子網(wǎng)掩碼表示為255.255.255.0,二進(jìn)制表示為11111111.11111111.11111111.00000000
例2:172.16.198.12/20,其子網(wǎng)掩碼表示為255.255.240.0,二進(jìn)制表示為11111111.11111111.11110000.00000000
不難發(fā)現(xiàn),例1中共有24個(gè)1,例2中共有20個(gè)1,所以n是這么來(lái)的。運(yùn)營(yíng)商ISP常用這樣的方法給客戶(hù)分配IP地址。
注:n為1到32的數(shù)字,表示子網(wǎng)掩碼中網(wǎng)絡(luò)號(hào)的長(zhǎng)度,通過(guò)n的個(gè)數(shù)確定子網(wǎng)的主機(jī)數(shù)=2^(32-n)-2(-2的原因:主機(jī)位全為0時(shí)表示本網(wǎng)絡(luò)的網(wǎng)絡(luò)地址,主機(jī)位全為1時(shí)表示本網(wǎng)絡(luò)的廣播地址,這是兩個(gè)特殊地址)。
做子網(wǎng)劃分后的IP地址:網(wǎng)絡(luò)號(hào)+子網(wǎng)號(hào)+子網(wǎng)主機(jī)號(hào)
舉個(gè)栗子:
如:192.168.1.100/25,其子網(wǎng)掩碼表示:255.255.255.128
子網(wǎng)
該部分暫時(shí)沒(méi)有做太多說(shuō)明,如需請(qǐng)查閱更多資源
子網(wǎng)劃分是通過(guò)借用IP地址中若干位【主機(jī)地址】來(lái)充當(dāng)子網(wǎng)的【網(wǎng)絡(luò)地址】,從而將原網(wǎng)絡(luò)劃分為若干子網(wǎng)。
劃分子網(wǎng)時(shí),隨著子網(wǎng)地址借用主機(jī)位數(shù)的增多,子網(wǎng)的數(shù)目隨之增加,但每個(gè)子網(wǎng)中的可用主機(jī)數(shù)逐漸減少。
如C類(lèi)地址,原有8位主機(jī)位,2^8-2即254個(gè)主機(jī)地址,默認(rèn)子網(wǎng)掩碼255.255.255.0。(全0或全1不可用)
借用1位主機(jī)位,產(chǎn)生2^1-2=0個(gè)子網(wǎng),每個(gè)子網(wǎng)有2^7-2個(gè)主機(jī)地址;
借用2位主機(jī)位,產(chǎn)生2^2-2=2個(gè)子網(wǎng),每個(gè)子網(wǎng)有2^6-2個(gè)主機(jī)地址;
……
計(jì)算子網(wǎng)掩碼
根據(jù)子網(wǎng)數(shù)
根據(jù)子網(wǎng)數(shù),計(jì)算子網(wǎng)掩碼
1)將子網(wǎng)數(shù)目轉(zhuǎn)化為二進(jìn)制來(lái)表示
2)取得該二進(jìn)制的位數(shù),為 N
3)取得該IP地址的類(lèi)子網(wǎng)掩碼,將其主機(jī)地址部分的前N位置1 即得出該IP地址劃分子網(wǎng)的子網(wǎng)掩碼。
如欲將B類(lèi)IP地址168.195.0.0劃分成27個(gè)子網(wǎng):
1)27=11011
2)該二進(jìn)制為五位數(shù),N = 5
3)將B類(lèi)地址的子網(wǎng)掩碼255.255.0.0的主機(jī)地址前5位置1(B類(lèi)地址的主機(jī)位包括后兩個(gè)字節(jié),所以這里要把第三個(gè)字節(jié)的前5位置1),得到 255.255.248.0
即為劃分成27個(gè)子網(wǎng)的B類(lèi)IP地址 168.195.0.0的子網(wǎng)掩碼(實(shí)際上是劃成了32-2=30個(gè)子網(wǎng))。
10101000 11000011 00000000 00000000
11111111 11111111 00000000 00000000
11111111 11111111 11111000 00000000
11111111 11111111 11111000 00000000
根據(jù)主機(jī)數(shù)
1. 根據(jù)主機(jī)數(shù)計(jì)算子網(wǎng)掩碼
2. 根據(jù)子網(wǎng)掩碼計(jì)算子網(wǎng)數(shù)
3. 根據(jù)子網(wǎng)掩碼計(jì)算主機(jī)數(shù)
4. 根據(jù)子網(wǎng)掩碼確定子網(wǎng)絡(luò)的起止地址
根據(jù)主機(jī)數(shù)計(jì)算子網(wǎng)掩碼
把B類(lèi)地址172.16.0.0劃分成若干子網(wǎng)絡(luò),每個(gè)子網(wǎng)絡(luò)能容納500臺(tái)主機(jī),它的子網(wǎng)掩碼是多少?
①把500轉(zhuǎn)換成二進(jìn)制表示111110100
②統(tǒng)計(jì)一下這個(gè)二進(jìn)制的數(shù)共有9位
③將子網(wǎng)掩碼255.255.255.255從后向前的9位變成0
④這就得到了所要的子網(wǎng)掩碼(11111111.11111111.11111110.00000000)255.255.254.0。
根據(jù)子網(wǎng)掩碼計(jì)算子網(wǎng)數(shù)
A類(lèi)IP地址,子網(wǎng)掩碼為255.224.0.0,它所能劃分的最大有效子網(wǎng)數(shù)是多少?
①將子網(wǎng)掩碼轉(zhuǎn)換成二進(jìn)制表示11111111.11100000.00000000.00000000
②統(tǒng)計(jì)一下它的網(wǎng)絡(luò)位共有11位
③A類(lèi)地址網(wǎng)絡(luò)位的基礎(chǔ)數(shù)是8,二者之間的位數(shù)差是3
④最大有效子網(wǎng)數(shù)就是2的3次方,即最多可以劃分8個(gè)子網(wǎng)絡(luò)。
2的位數(shù)差次方
根據(jù)子網(wǎng)掩碼計(jì)算主機(jī)數(shù)
A類(lèi)IP地址,子網(wǎng)掩碼為255.252.0.0,將它劃分成若干子網(wǎng)絡(luò),每個(gè)子網(wǎng)絡(luò)中可用主機(jī)數(shù)有多少?
①將子網(wǎng)掩碼轉(zhuǎn)換成二進(jìn)制表示11111111.11111100.00000000.00000000
②統(tǒng)計(jì)一下它的主機(jī)位共有18位
③最大可用主機(jī)數(shù)就是2的18次方減2(除去全是0的網(wǎng)絡(luò)地址和全是1廣播地址),即每個(gè)子網(wǎng)絡(luò)最多有262142臺(tái)主機(jī)可用。
2的主機(jī)號(hào)長(zhǎng)度次方
根據(jù)子網(wǎng)掩碼確定子網(wǎng)絡(luò)的起止地址
B類(lèi)IP地址172.16.0.0,子網(wǎng)掩碼為255.255.192.0,它所能劃分的子網(wǎng)絡(luò)起止地址是多少?
11111111 11111111 11000000 00000000 [255.255.192.0]
11111111 11111111 00000000 00000000 [255.255.255.0]
①利用子網(wǎng)掩碼計(jì)算,最多可以劃分4個(gè)子網(wǎng)絡(luò),【差兩位,2的2次方=4】
②利用子網(wǎng)掩碼計(jì)算,每個(gè)子網(wǎng)絡(luò)可容納16384臺(tái)主機(jī)(包括網(wǎng)絡(luò)地址和廣播地址)【2的14次方-2】
③用16384除以256(網(wǎng)段內(nèi)包括網(wǎng)絡(luò)地址和廣播地址的全部主機(jī)數(shù)),結(jié)果是64
④具體劃分網(wǎng)絡(luò)起止方法如下:
172.16.0.0~172.16.63.255
172.16.64.0~172.16.127.255
172.16.128.0~172.16.191.255
172.16.192.0~172.16.255.255