1. 程式人生 > >Python(網路基礎)

Python(網路基礎)

day33

參考:http://www.cnblogs.com/linhaifeng/articles/5937962.html

IP協議:

  • 規定網路地址的協議叫ip協議,它定義的地址稱之為ip地址,廣泛採用的v4版本即ipv4,它規定網路地址由32位2進製表示
  • 範圍0.0.0.0-255.255.255.255
  • 一個ip地址通常寫成四段十進位制數,例:172.16.10.1

ip地址分成兩部分

  • 網路部分:標識子網
  • 主機部分:標識主機

注意:單純的ip地址段只是標識了ip地址的種類,從網路部分或主機部分都無法辨識一個ip所處的子網

例:172.16.10.1與172.16.10.2並不能確定二者處於同一子網

子網掩碼

所謂”子網掩碼”,就是表示子網路特徵的一個引數。它在形式上等同於IP地址,也是一個32位二進位制數字,它的網路部分全部為1,主機部分全部為0。比如,IP地址172.16.10.1,如果已知網路部分是前24位,主機部分是後8位,那麼子網路掩碼就是11111111.11111111.11111111.00000000,寫成十進位制就是255.255.255.0。

 

知道”子網掩碼”,我們就能判斷,任意兩個IP地址是否處在同一個子網路。方法是將兩個IP地址與子網掩碼分別進行AND運算(兩個數位都為1,運算結果為1,否則為0),然後比較結果是否相同,如果是的話,就表明它們在同一個子網路中,否則就不是。

 

比如,已知IP地址172.16.10.1和172.16.10.2的子網掩碼都是255.255.255.0,請問它們是否在同一個子網路?兩者與子網掩碼分別進行AND運算,

172.16.10.1:10101100.00010000.00001010.000000001

255255.255.255.0:11111111.11111111.11111111.00000000

AND運算得網路地址結果:10101100.00010000.00001010.000000000->172.16.10.0

 

172.16.10.2:10101100.00010000.00001010.000000010

255255.255.255.0:11111111.11111111.11111111.00000000

AND運算得網路地址結果:10101100.00010000.00001010.000000000->172.16.10.0

結果都是172.16.10.0,因此它們在同一個子網路。

總結一下,IP協議的作用主要有兩個,一個是為每一臺計算機分配IP地址,另一個是確定哪些地址在同一個子網路。

tcp報文

tcp三次握手和四次揮手

 

斷開時必須是四次握手,因為有可能資料並沒有傳送完,不能馬上斷開。

 

dns解析域名。

協議部分:http://

域名部分:www.cnblogs.com  ip

資源部分:/alex3714

 

https://www.cnblogs.com/linhaifeng/articles/5951486.html

 

子網掩碼的劃分教程:

https://jingyan.baidu.com/article/ae97a646d936ddbbfd461d02.html

以192.168.1.53/27為例講解

相應掩碼為:11111111.11111111.11111111.11100000

以上橙色數字為27位網路號,即網路號向主機號接了3位。(一般C網是24位網路號,後面8位是主機號)

8位主機號減去借去的3位,剩下5位。

最多可容納的主機數: 2^5 = 32

可用的主機數: 2^5 - 2 = 30(減去網路地址廣播地址)

子網掩碼的十進位制數是11111111.11111111.11111111.11100000

十進位制:(255,255,255,224)

 

網路號向主機號借了3位(子網地址部分),即分成2^3 = 8個子網。

 

下面計算網路地址,廣播地址,和可用IP

IP地址:   11000000.10101000.00000001.00110101(192.168.1.53)

子網掩碼:  11111111.11111111.11111111.11100000

網路地址:11000000.10101000.00000001.00100000(用IP地址、子網掩碼and計算,即將IP地址中主機位部分設為0,得192.168.1.32)

廣播地址:11000000.10101000.00000001.00111111(網路位+全為1的主機位,將主機位全設為1,得192.168.1.63)

可用的IP範圍:192.168.1.33~192.168.1.62(可用主機數30)

各子網的引數如下:

第一子網的IP段為:192.168.1.0~192.168.1.31(32個)

可以主機數:          192.168.1.1~192.168.1.30(30個)

第二子網的IP段為:192.168.1.32~192.168.1.63(32個)

可以主機數:          192.168.1.33~192.168.1.62(30個)

............類推

192.168.1.53/27位於第2子網,也可得可用主機數為192.168.1.33~192.168.1.62(30個)