博客專欄

EEPW首頁 > 博客 > Linux下使用指定網(wǎng)卡進(jìn)行ping操作

Linux下使用指定網(wǎng)卡進(jìn)行ping操作

發(fā)布人:電子禪石 時間:2023-04-12 來源:工程師 發(fā)布文章

目錄

  1. 為什么要使用知道那個網(wǎng)卡ping操作

  2. 使用指定網(wǎng)卡ping操作

  3. 總結(jié)


1、 為什么要使用指定網(wǎng)卡ping操作

  現(xiàn)在很多服務(wù)器都擁有雙網(wǎng)卡甚至多網(wǎng)卡,有些是為了保持高可用,有些是網(wǎng)絡(luò)隔離(內(nèi)網(wǎng)與外網(wǎng)或者不同網(wǎng)絡(luò))

  很多學(xué)者在模擬企業(yè)級環(huán)境時也為一臺虛擬機配置了雙網(wǎng)卡,一塊NAT模式,一塊LAN區(qū)段模式,如果使用簡單的ping ip形式的命令得到ping通的結(jié)果,只能證明兩個虛擬機可以ping通,那究竟是使用了哪塊網(wǎng)卡去ping另一個虛擬機?

 

2、實現(xiàn)使用指定網(wǎng)卡進(jìn)行ping操作

  (1) 查ping的幫助

    遇到問題首先就想到查看命令幫助,獲取到的幫助如下:

  # ping --help 
  ping: invalid option -- '-' 
   Usage: ping [-aAbBdDfhLnOqrRUvV64] [-c count] [-i interval] [-I interface] 
               [-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos] 
               [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option] 
               [-w deadline] [-W timeout] [hop1 ...] destination

    一眼就看到了這個  -I 接口  這個選項(也就這個沾點邊),其他完全沒有看出任何可以指定網(wǎng)卡設(shè)備的可能,接下來查看下man幫助,搜索  -I  這個選項查看詳細(xì)解釋。

1 # man ping
   I interface3               interface  is  either  an  address,  or  an  interface  name.  If interface is an4               address, it sets source address to specified interface address.  If interface  in5               an  interface  name,  it sets source interface to specified interface.  For IPv6,6               when doing ping to  a  link-local  scope  address,  link  specification  (by  the7               '%'-notation in destination, or by this option) is required.

    本人英文不好,百度翻譯了一下,大概意思為:接口可以是地址,也可以是接口名。如果接口是4地址,將源地址設(shè)置為指定的接口地址。

    也就是說,  -I 接口  這個接口可以是網(wǎng)卡設(shè)備名,也可以是網(wǎng)卡設(shè)備的IP地址。接下來進(jìn)行試驗

 

  (2) 使用  -I  選項實現(xiàn)指定網(wǎng)卡進(jìn)行ping操作

   我的linux虛擬機(主機A)有兩張網(wǎng)卡,一張是NAT(192.168.187.10),另一張是LAN區(qū)段(172.16.0.10)

    第二臺虛擬機(主機B),一張NAT(192.168.187.11),另一張是LAN區(qū)段(172.16.0.11)

    正常情況下 主機A  ping  主機B 是可以ping通的,但是不知道使用的是那張網(wǎng)卡:

 #  . PING . (.) (  bytes from .: icmp_seq= ttl= =  bytes from .: icmp_seq= ttl= =

 

    使用IP地址指定主機A的NAT網(wǎng)卡ping主機B的LAN區(qū)段網(wǎng)卡(理論不能ping通):

# ping I 192.168.187.10 172.16.0.112 
PING 172.16.0.11 (172.16.0.11) from 192.168.187.10 : 56(84) bytes of data.
 From 192.168.187.10 icmp_seq=1 Destination Host Unreachable

    實際確實ping不通,而且顯示 PING 172.16.0.11 (172.16.0.11) from 192.168.187.10 證明ping操作是來自IP地址為192.168.187.10這塊網(wǎng)卡的,實驗成功

    另一種方式,使用主機A的NAT網(wǎng)卡名ping主機B的NAT網(wǎng)卡(理論可以ping通):

# ping I ens33 192.168.187.112 
PING 192.168.187.11 (192.168.187.11) from 192.168.187.10 ens33: 56(84) bytes of data. 64 bytes from 192.168.187.11: icmp_seq=1 ttl=64 time=18.1 ms4 64 bytes from 192.168.187.11: icmp_seq=2 ttl=64 time=4.11 ms

    實驗成功,顯示的也是 ping 192.168.187.11 來自 192.168.187.10 ens33網(wǎng)卡。

 

3、總結(jié)

  ping命令可以使用指定網(wǎng)卡進(jìn)行ping操作

  用法是:

1 # ping  -I  本機指定網(wǎng)卡名或網(wǎng)卡的IP地址  目標(biāo)地址


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: ping

技術(shù)專區(qū)

關(guān)閉