ping(未完待補充)
ping是程式,有程式;包頭部的ID代表了程式
ICMP Echo Request:
- Type:8
- Code:0
- Header Checksum:
- Identifier:代表程式ID,ID相同代表一個程式
- Sequence Number:該程式包的序列號
- Payload:
- Unix/Cisco的payload裡面放了時間有關的資料,可以計算出時間差
- 微軟的payload裡面是填充,無實際意義;微軟的時間差是程式自己記錄的
ICMP Echo Reply:
- Type:0
- Code:0
- Header Checksum:
- Identifier:代表程式ID,ID相同代表一個程式
- Sequence Number:該程式包的序列號,如果有的話,和Request值一樣
- Payload:
PAT與ping
- PAT:埠地址轉換,意思就是有埠才轉換,沒埠無法轉換
- 每一個會話佔用一個埠號
- ICMP沒有埠號,所以ICMP要解決過PAT的問題
- Cisco曾(12.3版本前)把序列號當作埠號,這樣的後果是:ping10000個包就是10000個序列號,要轉換10000個埠號
- 後來改進為用ID做轉換
一個地址理論上可以同時處理的會話個數:
- tcp65535-1023
- udp65535-1023
- ping65535-1023
IP可選項與ping(IP協議見https://isjojo.blog.csdn.net/article/details/110413713,可選項在倒數第二行字有提到)
- IP記錄路徑選項:記錄所有的出介面
- 大多數不同版本的ping程式都提供-R選項,以提供記錄路由的功能(debug ip icmp ,ping 回車 R Record)
- 過程以及作用:
- 源主機生成RR(路徑記錄)選項
- 中間路由器對RR選項進行處理,中間路由器會把出介面的IP地址放到路徑記錄選項裡面
- 目的裝置會回顯請求,回來的過程中也會記錄出介面
- 收到回顯請求:一路上去與回的出介面都會被記錄列印
- 缺點:IP頭部可選項最多40位元組,去除IP選項的欄位(3位元組),最多可以放9個IP地址(去與回一共),所以大型網路要用trace route
- IP選項3位元組結構:
- code1位元組:對於RR來說,值為7
- len1位元組:RR選項總位元組長度,39,先佔滿整個空間
- ptr1位元組:指標位,指下一個IP存放的位置
- IP源站路由(有安全隱患,Cisco路由器天生支援)
- 作用:IP包在穿越網路時,除特殊情況,源目IP地址是不變的;源站路由的包逐跳改變目的IP地址
- 嚴格的源路由選擇:目的地必須和上臺路由器直連
- code值:0x89
- 寬鬆的源站選路:下一跳可以不直連
- code值:0x83
- 安全隱患:嚴格源站路由直接直連逐跳過來,不走路由表,不過策略;寬鬆源站路由可以先到邊界,然後再使用下一跳為內網地址入侵
- 又名:源站及記錄路由
- 以嚴格源站為例,#表示指標位置,下一次從指標位置讀,記錄出介面是為了回包,源站路由是雙向的
- 關閉命令:no ip source-route
- ICMP源站路由失敗差錯報文
- 型別:3
- 程式碼:5
- 失敗的可能:裝置不支援、嚴格源站指的是非直連
相關文章
- 【排序】氣泡排序(待補充)排序
- 排序【未完待續】排序
- 虛擬記憶體(待補充)記憶體
- odoo學習-4 許可權(待補充)Odoo
- 搜尋全家桶(未完待續)
- JAVA面試題(未完待續)Java面試題
- HashMap原始碼分析,未完待續HashMap原始碼
- Runtime 執行時(未完待續)
- Scala Learn 5 模式匹配和樣例類 (待補充)模式
- 常用揹包dp模板(未完待續)
- git安裝與使用,未完待續... ...Git
- Maven(個人整理)(一,未完待續)Maven
- Index R 時序數倉技術架構(待補充)Index架構
- GDI+學習筆記--未完待續筆記
- 字串匹配演算法【未完待續】字串匹配演算法
- Shell 入門系列: 導航 (未完待續)
- Redis的常用命令——未完待續Redis
- 小程式學習筆記(未完待續)筆記
- 前端學習整理資料(未完待續)前端
- Go的一些特性 未完待續Go
- 函式基本定義和使用‘未完待續函式
- 光速上手k8s(2023)(containerd)(未完待續)K8SAI
- Charles日常使用中的問題總結,未完待續……
- Zero shot Learning 論文學習筆記(未完待續)筆記
- 《Katana ZERO(武刃 零)》:嗑藥過量,未完待續
- 大一寒假集訓(13)(14)---vector ,string【未完待續】
- CSS基礎速刷 - 非佈局樣式(未完待續)CSS
- 資料結構的練習day2(未完待續)資料結構
- Elementary OS折騰記錄( 未完待續,一直更新)
- 在docker中做php優化的發現(未完待續)DockerPHP優化
- 單目深度估計中的LOSS構造【未完待續】
- [外掛擴充套件]Ping外掛套件
- android輸入法機制的學習總結(未完待續)Android
- linux命令補充Linux
- 聯通性補充
- JVM補充篇JVM
- 第一週作業Linux基礎(未完待續,週日繼續)Linux
- 計算機組成原理簡單複習總結--未完待續計算機