抓包工具
Wireshark:全球最知名的網絡抓包軟件
科來網絡分析系統:國產網絡抓包軟件
複製代碼
OSI是一個理論,協議棧是理論的實現
OSI模型,分爲如下七層:
1,2,3:層負責上層的軟件交互 4,5,6:數據流層 7:通訊
1.應用層
2.表示層
3.會話層
4.傳輸層
5.網絡層
6.數據鏈路層
7.物理層
複製代碼
1.Ethernet(以太網)協議
定義:用於實現鏈路層的數據傳輸和地址封裝(MAC),DIX(Digital、Intel、Xerox)聯盟開發
Destination/目的字段:標識目的通訊方的MAC地址
Source/源字段:標識發送端的MAC地址
Type/類型值:標誌上層協議
複製代碼
MAC地址
全部設備的MAC地址都是全球惟一的
MAC地址是16進製表示的,長度爲48bit,採用冒號分16進製表示;01010100
MAC地址前半部分被稱爲‘OUI代碼’廠商惟一標識符,後半部分爲廠商自行分配
以太網協議僅僅是鏈路層/局域網通訊中的一種標準(並非惟一標準),還有其餘鏈路層協議,令牌網、總線網、FDDI網...
複製代碼
ARP協議
ARP(Address Resolution Protocol)地址解析協議,用於實現IP地址到MAC地址映射(知道IP經過ARP協議獲得MAC),實現數據封裝過程,ARP協議是在Ethernet以上,屬於網絡層
arp -a 查看電腦的ARP表
複製代碼
ARP攻擊工具
Cain & Abel Etthercap P2P終結者
複製代碼
ARP欺騙攻擊/中間人攻擊/毒化
ARP防禦
彩影ARP 360ARP防火牆 金山貝殼ARP windows手工綁定
使用arp -s ip mac添加靜態項
複製代碼
免費/無端ARP:用於檢測IP地址衝突場景
一、地址變更(地址衝突)
二、DHCP獲取地址
複製代碼
IP協議
Internet Protocol 互聯網協議,用於實現數據的不可靠面向無鏈接的通訊,實現三層數據封裝和IP尋址
1.版本號(Version):表示IP協議版本
2.TTL生存時間(Time to live):當路由器收到一個TTL=0的數據包時,則宣告此數據包死亡並丟棄。每通過一「跳」TTL減一,最大爲255跳。標誌路徑長短,防止環路
3.協議號(Protocol):類型值,協議號,端口號都是用於標誌上層協議,方便接收方實現數據的解封裝,此功能稱爲協議之間的‘分用’
4.頭部校驗和(Header checksum)(奇偶,MD5算法):頭部長度(默認爲20字節),總長度;區分IP頭部和數據包,接收方根據長度字段知道從哪裏解封裝
5.IP分片原理---標識、標誌、偏移量(以太網包最大爲1500bytes)
a.標識符(Identification):用於標誌分片的進程
b.標誌符(Flags):MF(More fragments)更多位用於告知接收方是否還有分片,0表示沒有,1表示有;DF(Don't fragments)不要分片位告知途徑設備不要進行分片
c:偏移量(Fragment offset):用於告知接收方每一個分片距離IP頭部的位置,才能實現有序的從新組裝
6.DSCP/TOS:QoS服務質量技術用於實現流量標記
複製代碼
一、廣播數據包不能跨網段;(ARP request沒法發送到遠端設備)
二、多網段通訊過程當中,IP地址不變,可是MAC地址會改變
同網段通訊過程當中,IP和MAC信息不變,‘跟誰通訊用誰的MAC’
複製代碼
ICMP協議:
互聯網信息控制協議(Internet Control Message Protocol),用於實現鏈路連通性測試和鏈路追蹤,能夠實現鏈路差錯報告。
ICMP運行在傳輸層協議,服務於IP協議
複製代碼
工具
1.Ping
ping的原理:探測目的主機是否有問題,探測本地到目的的延遲等
Echo request 回顯請求
Echo reply 回顯應答
2.Traceroute/Tracert(跟蹤)
原理:探測本地到目的路徑,「踩點」
複製代碼
DOS(Deny of service)攻擊 拒絕服務式攻擊
DDOS(Distributed deny of service) 分佈式拒絕服務式攻擊
工具:LOIC
複製代碼
UDP協議
用戶數據報協議,user datagram protocol,用於實現面向無鏈接的不可靠協議,傳輸層協議
複製代碼
原理
特徵
1.數據包結構很是簡潔
2.處理速度快
3.實時交互(社交軟件、視頻流、實時交互協議)
複製代碼
基於UDP開發的應用,協議
DHCP(端口:67/68) DNS(53) OICQ(8000) TFTP(69)
複製代碼
DHCP
動態主機配置協議,Dynamic Host Configuration Protocol,用於實現對終端設備的動態IP信息分配(IP地址、網關地址、DNS服務器、WINS服務)
複製代碼
原理
1.通訊過程當中,源端口通常屬於隨機高端口(端口號比較大),目的端口屬於固定知名端口。
2.1-1023爲知名端口號範圍,餘下的爲高端口號
複製代碼
小結
1.數據包的功能:
發現包用於廣播發現局域網的DHCP服務器;
提供包用於預回覆客戶端,告知其即將給的IP地址
請求包正是對感興趣的服務器/IP地址發起請求
確認包對客戶端進行最終的正是確認(這個時候服務器會將分配出去的IP地址移開本地地址池)
2.爲何須要4個包來獲取地址,而不是2個包
2個包沒法解決多服務器環境下,地址浪費的問題
3.DHCP初始請求過程當中,客戶端本地是沒有IP地址的,那麼如何對外發送發現和請求包呢
0.0.0.0
4.DHCP的交互過程都是廣播包形式來實現的,目的IP採用255.255.255.2555
5.DHCP交互過程當中,服務端爲67,客戶端爲68
複製代碼
TCP協議
Transmission Control Protocol,傳輸控制協議,是TCP/IP協議棧中算法最多,功能最繁雜的協議。
基於TCP的應用層協議:
HTTP:80 上網
HTTPS:443 安全性較高,網銀、支付寶
FTP:20/21 傳輸大數據流
SSH:22 遠程安全鏈接、登陸
TELNET:23 遠程鏈接、登陸
SMTP/POP:25/110 郵件傳輸協議,一個收,一個發送
複製代碼
功能
面向鏈接(三次握手、四次揮手)
可靠傳輸(經典重傳、超時重傳、快速重傳/選擇性重傳)
流量控制(滑動窗口、擁塞管理)
多路複用(套接字)
複製代碼
原理
1.面向鏈接(三次鏈接、四次揮手)
三次鏈接
三次握手是一個會話的創建過程,這個過程當中沒有正式的數據包交互
SYN包用於實現端口請求,ACK包用於實現端口回覆
複製代碼
2.四次揮手(結束會話)
四次揮手的意義在於釋放會話,減小服務器和客戶端的資源消耗
複製代碼
2.可靠傳輸(序列號SEQ、確認號ACK)
複製代碼
3.流量控制
複製代碼
4.多路複用(套接字socket/session---IP+Port)
複製代碼
Telnet協議
遠程登陸協議,用於對設備進行遠程管理
複製代碼