1. 程式人生 > 其它 >網安入門(一)之TCP/IP體系結構與HTTP傳輸協議

網安入門(一)之TCP/IP體系結構與HTTP傳輸協議

網安入門(一)

一. TCP/IP結構體系

1.1基本結構

 

1.2 IP

  • 定義:ip地址是計算機在網路上的標識,用來在網際網路中尋找計算機。
  • url與ip的關係:url輸入後經瀏覽器向dns伺服器查詢對應的ip地址。
  • 內網ip與公網ip
    • 內網ip:路由以內的網路,可以連線網際網路(需要埠對映),但是網際網路無法直接連線內網。
    • 公網ip:即網際網路ip.
    • 內網產生原因:內網隔絕相對安全,ipv4域名耗盡
    • 如何判斷自己的ip是內網還是公網(目前多為內網ip): 1.在本機的命令列視窗中輸入ipconfig查詢本機ip   2.百度直接搜尋ip     3.若兩者顯示的ip地址相同則為公網ip。
    • 兩者關係:公網ip類似小區地址,內網ip類似門牌號.

1.3埠

  • 定義:應用程式(服務)在計算機中的唯一標識。
  • 埠與ip的關係
     

 

二. HTTP協議

2.1什麼是HTTP協議?

  • 傳輸協議:傳輸協議定義了瀏覽器客戶端傳輸資料的格式。
  • HTTP協議(超文字傳輸協議HyperText Transfer Protocol),它是基於TCP協議的應用層傳輸協議,簡單來說就是客戶端和服務端進行資料傳輸的一種規則。
  • 特點:
    • 基於tcp/ip協議
    • 預設埠號為80
    • 請求和響應一一對應
    • 每次請求相互獨立,是無狀態協議。

2.2HTTP協議的請求與響應

2.2.1請求

      請求的基本結構

GET http://www.foo.com/ HTTP/1.1

Host: www.foo.com

User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.3 Safari/535.19

Referer: http://www.baidu.com/

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Encoding: gzip,deflate,sdch

Accept-Language: zh-CN,zh;q=0.8

Accept-Charset: GBK,utf-8;q=0.7,*;q=0.3

Cookie: SESSIONID=58AB420B1D8B800526ACCCAA83A827A3:FG=1

 

 

  •  請求方式:常用的有GET與POST。
  • host:表面請求的主機。
  • user-Agent:表明身份(我是誰)。從這裡可以看到作業系統、瀏覽器、 瀏覽器核心及對應的版本號等資訊。用於對於區分不同裝置或瀏覽器以顯示不同內容。
  • Referer :表明從哪裡來,比如從 http://www.baidu.com/頁面點選過來。
  • Acceot-Encoding,Accept-Language,Accept-Charset,分別表示接受的編碼方式,可識別的語言,可識別的字符集。
  • cookie: cookie介紹及使用_菜雞的全棧路的部落格-CSDN部落格   

 Get與post的區別(一下的wk=111為請求引數)

get      

 

   post

 

   總結區別:

    • get的請求引數在url地址中(eg:百度搜索),url的長度有限制,用於字元型,僅一次tcp連線
    • post請求引數在請求體中,必須有Content-Type屬性,無大小限制,位元組型(字元,音樂,圖片,視訊等等),瀏覽器不同,傳送的tcp連線次數不同。

2.2.2響應

  響應的結構

  HTTP/1.1 200 OK

  Date: Sun, 04 Mar 2012 22:48:31 GMT

Server: Apache/2.2.8 (Win32) PHP/5.2.6

Set-Cookie: PTOKEN=;expires=Mon, 01 Jan 1970 00:00:00 GMT;path=/; domain=.foo.com; HttpOnly

Set-Cookie: USERID=c7888882e039b32fd7b4d3; expires=Tue, 01 Jan 2030 00:00:00 GMT; path=/; domain=.foo.com

X-Powered-By: PHP/5.2.6

Content-Length: 3635

Keep-Alive: timeout=5, max=100

Connection: Keep-Alive

Content-Type: text/html;charset=gbk

 

   響應體就是伺服器返回的內容(網頁,圖片,音樂,視訊)。

  響應狀態碼