交換機工作原理與網絡層協議


一、數據鏈路層

數據鏈路層是OSI參考模型中的第二層,介乎於物理層網絡層之間。數據鏈路層在物理層提供的服務的基礎上向網絡層提供服務,其最基本的服務是將源自網絡層來的數據可靠地傳輸到相鄰節點的目標機網絡層。而交換機就工作在這一層,也叫二層設備。

img

二、交換機

2.1 交換機設備簡介

1)Cisco交換機產品系列
常見的包括Cisco 2960系列,Cisco 3560系列,Cisco 4500系列和Cisco 6500系列

2)H3C交換機產品系列
核心層,路由式交換機:S10500、S9500E、S7500E、S7500等

匯聚層,全千兆智能交換機:S5500-EI/SI、S5510、S5120-EI/SI、S5600等

接入層:S3100-EI/SI、S3600-EI/SI、S3610等

2.2交換機工作原理

1、交換機根據收到數據幀中的源MAC地址建立該地址同交換機端口的映射,並將其寫入MAC地址表中。

2、交換機將數據幀中的目的MAC地址同已建立的MAC地址表進行比較,以決定由哪個端口進行轉發。

3、如數據幀中的目的MAC地址不在MAC地址表中,則向所有端口轉發,這一過程稱為泛洪。

2.3華為交換機基本配置

用戶視圖:基本操作、查看基本信息

系統視圖:進階操作,配置靜態路由、動態路由:rip,ospf,BGP

接口模式:配置IP地址

用戶視圖模式 切換至系統視圖模式[Huawei]
system-view
sys

退回用戶視圖
ctrl+z
[Huawei] quit

  1. 歷史命令查詢
    [Huawei] display history-command
  2. 配置主機名
    system-view
    [Huawei] sysname Router1
  3. 狀態信息查詢
    display version ####查看VRP版本
    display users ####查看用戶終端信息
  4. 進入接口模式並查看信息
    sys
    [Huawei]int e0/0/1
    [Huawei-GigabitEthernet0/0/1]dis this ####查看當前視圖下的配置信息
  5. 配置文件管理命令
    [Huawei]display saved-configuration ###查看設備保存的信息
    [Huawei]display current-configuration ###查看設備當前配置的信息
    save ###保存配置
    reset saved-configuration # ##擦除存儲設備中的配置文件(初始化)
    compare configuration ###比較當前配置信息與存儲設備中的保存文件是否一致
  6. 關閉華為的信息提示中心
    [Huawei]undo info-center enable
    或者
    undo terminal monitor
  7. 永不超時
    [Huawei]user-interface console 0
    [Huawei-ui-console0]idle-timeout 0 0
  8. 配置雙工及速率命令
    sys
    [Huawei]int g0/0/1
    [SW1-Ethernet0/0/1]undo negotiation auto ###關閉自動協商
    [SW1-Ethernet0/0/1]speed 100 ###調至速率100M
    [SW1-Ethernet0/0/1]duplex full ###調至全雙工模式, 解釋:full:Full-Duplex(全雙工模式) half:Half-Duplex(半雙工模式)
  9. 保存配置
    save
  10. 設置遠程登錄密碼
    [Huawei]user-interface vty 0 4 #0是初始值,4是結束值。表示可同時打開5個會話進入交換機去配置命令
    [Huawei-ui-vty0-4]authentication-mode password
    [Huawei-ui-vty0-4]set authentication password simple 222
    [Huawei-ui-vty0-4]user privilege level 3
    [Huawei-ui-vty0-4]dis this

三、網絡層協議

3.1 IP數據包格式

TCP/IP協議定義了一個在因特網上傳輸的包,稱為IP數據報(IP Datagram)。這是一個與硬件無關的虛擬包,由首部和數據兩部分組成,其格式如圖所示。首部的前一部分是固定長度,共20字節,是所有IP數據報必須具有的。在首部的固定部分的后面是一些可選字段,其長度是可變的。首部中的源地址和目的地址都是IP協議地址。
在這里插入圖片描述

  1. 版本(version)說明IP協議的版本,允許從一個協議版本變為另一個版本。   

  2. 首部長度(length)(以4字節為單位) 描述分組頭的長度(最少20B,最大60B), 固定首部為20B。   

  3. 服務類型(Type of service:TOS)用於指示數據報所需的服務類型或“質量”。處理數據報的路由器閱讀這個域,如果需要,將提供優先服務。以前,這個域指示軍事急件或關鍵事件所要的優先處理。根據在Internet Engineering Task Force(IETF)最近的討論看出,現在,TOS的定義已經改變為減少延遲、減少金錢開銷、增大吞吐率,或增加可靠性的需要。   

  4. 總長度(Total length) 說明數據報的總長度,最大長度為2^16-1=65536個字節。   

  5. 標識(Identification)提供連接獨立分段數據報的信息,於是目的站點就可以將它們組裝成一個完整的分組。

      

  6. 標志(flags) 有兩個標志位。第一個標志位指定一個分組不允許被分段,所以必須在能將處理分組當前長度的子網絡上傳輸。第二個標志位指定一個數據報是一個分段分組的最后。   

  7. 段偏址(Fragment offset) 對於分段數據報,這個域指出這個數據在分組中的原來位置,在重新組裝的過程中將用到這個信息。

    結合5、6、7舉列

  8. 存活時間(Time-to-live)這個時間以秒為單位,它是數據報可以生存的時間。在傳輸中,如果超過了這個時間,這個數據報就被認為丟失了,或在一個循環內並且被廢棄。   

  9. 協議(protocol)標識數據報的協議類型,這樣就可以允許非TCP/IP協議工作。

      

  10. 分組頭檢驗(header checksum)提供一個錯誤檢查數值,以保證一個被分發分組的完整性。  

     

  11. 源/目地址 這是數據報源地和這個數據報目的地的地址。選擇(option)這個域是可選的,它提供了記錄通過網絡的一條路徑或指定一條路徑(源地路由選擇)。

3.2 ICMP協議介紹

1、什么是ICMP協議?
Internet控制消息協議ICMP(Internet Control Message Protocol):ICMP 它是TCP/IP協議簇的一個子協議,與 IP 協議、ARP 協議、RARP 協議及 IGMP 協議共同構成 TCP/IP 模型中的網絡層。
主要用於在主機與路由器之間傳遞控制信息,包括報告錯誤、交換受限控制和狀態信息等。當遇到IP數據無法訪問目標、IP路由器無法按當前的傳輸速率轉發數據包等情況時,會自動發送ICMP消息。控制消息是指網絡通不通、主機是否可達、路由是否可用等網絡本身的消息。這些控制消息雖然並不傳輸用戶數據,但是對於用戶數據的傳遞起着重要的作用。

2、 ICMP協議的主要功能?
ICMP就是一個“錯誤偵測與回報機制”,其目的就是讓我們能夠檢測網路的連線狀況﹐也能確保連線的准確性。當路由器在處理一個數據包的過程中發生了意外,可以通過ICMP向數據包的源端報告有關事件。
主要功能:

偵測遠端主機是否存在。
建立及維護路由資料。
重導資料傳送路徑(ICMP重定向)。
資料流量控制。
ICMP在溝通之中,主要是透過不同的類別(Type)與代碼(Code) 讓機器來識別不同的連線狀況。

3、 ICMP協議的應用?
ICMP協議主要用來檢測網絡通信故障和實現鏈路追蹤,最典型的應用就是PING和traceroute。
Ping:通過發送回送請求報文和回送回答報文來檢測源主機到目的主機的鏈路是否有問題,目的地是否可達,以及通信的延遲情況。
Ping用到的是ICMP協議,不是端口。

4、ICMP提供一致易懂的出錯報告信息。發送的出錯報文返回到發送原數據的設備,因為只有發送設備才是出錯報文的邏輯接受者。發送設備隨后可根據ICMP報文確定發生錯誤的類型,並確定如何才能更好地重發失敗的數據包。但是ICMP唯一的功能是報告問題而不是糾正錯誤,糾正錯誤的任務由發送方完成。
我們在網絡中經常會使用到ICMP協議,比如我們經常使用的用於檢查網絡通不通的Ping命令(Linux和Windows中均有),這個“Ping”的過程實際上就是ICMP協議工作的過程。還有其他的網絡命令如跟蹤路由的Tracert命令也是基於ICMP協議的。

3.3 ARP協議介紹

1、簡介
ARP,即地址解析協議,實現通過IP地址得知其物理地址。在TCP/IP網絡環境下,每個主機都分配了一個32位的IP地址,這種互聯網地址是在網際范圍標識主機的一種邏輯地址。為了讓報文在物理網路上傳送,必須知道對方目的主機的物理地址。這樣就存在把IP地址變換成物理地址的地址轉換問題。以以太網環境為例,為了正確地向目的主機傳送報文,必須把目的主機的32位IP地址轉換成為48位以太網的地址。這就需要在互連層有一組服務將IP地址轉換為相應物理地址,這組協議就是ARP協議。另有電子防翻滾系統也稱為ARP。

2、基本功能
在以太網協議中規定,同一局域網中的一台主機要和另一台主機進行直接通信,必須要知道目標主機的MAC地址。而在TCP/IP協議棧中,網絡層和傳輸層只關心目標主機的IP地址。這就導致在以太網中使用IP協議時,數據鏈路層的以太網協議接到上層IP協議提供的數據中,只包含目的主機的IP地址。於是需要一種方法,根據目的主機的IP地址,獲得其MAC地址。這就是ARP協議要做的事情。所謂地址解析(address resolution)就是主機在發送幀前將目標IP地址轉換成目標MAC地址的過程。

另外,當發送主機和目的主機不在同一個局域網中時,即便知道目的主機的MAC地址,兩者也不能直接通信,必須經過路由轉發才可以。所以此時,發送主機通過ARP協議獲得的將不是目的主機的真實MAC地址,而是一台可以通往局域網外的路由器的某個端口的MAC地址。於是此后發送主機發往目的主機的所有幀,都將發往該路由器,通過它向外發送。這種情況稱為ARP代理(ARP Proxy)。

3、工作原理
當一個基於TCP/IP的應用程序需要從一台主機發送數據給另一台主機時,它把信息分割並封裝成包,附上目的主機的IP地址。然后,尋找IP地址到實際MAC地址的映射,這需要發送ARP廣播消息。當ARP找到了目的主機MAC地址后,就可以形成待發送幀的完整以太網幀頭。最后,協議棧將IP包封裝到以太網幀中進行傳送。

如圖1所示,描述了ARP廣播過程。

圖片

在圖1中,當主機A要和主機B通信(如主機A Ping主機B)時。主機A會先檢查其ARP緩存內是否有主機B的MAC地址。如果沒有,主機A會發送一個ARP請求廣播包,此包內包含着其欲與之通信的主機的IP地址,也就是主機B的IP地址。當主機B收到此廣播后,會將自己的MAC地址利用ARP響應包傳給主機A,並更新自己的ARP緩存,也就是同時將主機A的IP地址/MAC地址對保存起來,以供后面使用。主機A在得到主機B的MAC地址后,就可以與主機B通信了。同時,主機A也將主機B的IP地址/MAC地址對保存在自己的ARP緩存內。

圖片

在每台安裝有TCP/IP協議的電腦里都有一個ARP緩存表,表里的IP地址與MAC地址是一一對應的。

3.4 ARP攻擊原理

1、簡介

ARP,即地址解析協議,實現通過IP地址得知其物理地址。在TCP/IP網絡環境下,每個主機都分配了一個32位的IP地址,這種互聯網地址是在網際范圍標識主機的一種邏輯地址。為了讓報文在物理網路上傳送,必須知道對方目的主機的物理地址。這樣就存在把IP地址變換成物理地址的地址轉換問題。以以太網環境為例,為了正確地向目的主機傳送報文,必須把目的主機的32位IP地址轉換成為48位以太網的地址。這就需要在互連層有一組服務將IP地址轉換為相應物理地址,這組協議就是ARP協議。另有電子防翻滾系統也稱為ARP。

2、攻擊原理

ARP欺騙攻擊建立在局域網主機間相互信任的基礎上的。

當A發廣播詢問:我想知道IP是192.168.0.3的硬件地址是多少?

此時B當然會回話:我是IP192.168.0.3我的硬件地址是mac-b,

可是此時IP地址是192.168.0.4的C也非法回了:我是IP192.168.0.3,我的硬件地址是mac-c。而且是大量的,所以A就會誤信192.168.0.3的硬件地址是mac-c,而且動態更新緩存表,這樣主機C就劫持了主機A發送給主機B的數據,這就是ARP欺騙的過程。

假如C直接冒充網關,此時主機C會不停的發送ARP欺騙廣播,大聲說:我的IP是192.168.0.1,我的硬件地址是mac-c,此時局域網內所有主機都被欺騙,更改自己的緩存表,此時C將會監聽到整個局域網發送給互聯網的數據報。

3、arp命令

1、Windows查看ARP緩存表(靜態ARP和動態ARP)

arp -a ###查看arp緩存表
arp -d [IP] ###刪除arp緩存表
arp -s IP MAC ###刪除arp靜態綁定

2、如提示ARP項添加失敗,解決方案:
a、用管理員模式:電腦左下角“開始”按鈕右鍵,點擊"Windows PowerShell (管理員) (A)”或者
進入C盤windows \system32文件夾找到cmd.exe, 右鍵“以管理員身份運行”再執行arp -s命令:

綁定arp(win10)
cmd中輸入
netsh -c i i show in
#查看網絡連接准確名稱,如:本地連接、無線網絡連接
netsh -c “i i” add neighbors 19 “IP” “Mac”,這里19是idx號。//綁定
netsh -c “i i” delete neighbors 19,這里19是idx號。 //解綁
netsh interface ipv4 set neighbors <接口序號> <IP> <MAC>

動態ARP表項老化:在一段時間內(默認180s)如果表項中的ARP映射關系始終沒有使用,則會被刪除。通過及時刪除不活躍表項,從而提升ARP響應效率

3、華為系統中的ARP命令
[Huawei]dis mac- address ## #查看mac地址信息
[Huawei]arp static <IP> <MAC> ## #綁定ARP
[Huawei]undo arp static <IP> <MAC> ###解綁定
<Huawei>reset arp all ###清除mac地址表


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM