目录

  1. 为什么要使用知道那个网卡ping操作

  2. 使用指定网卡ping操作

  3. 总结


1、 为什么要使用指定网卡ping操作

现在很多服务器都拥有双网卡甚至多网卡,有些是为了保持高可用,有些是网络隔离(内网与外网或者不同网络)

很多学者在模拟企业级环境时也为一台虚拟机配置了双网卡,一块NAT模式,一块LAN区段模式,如果使用简单的ping ip形式的命令得到ping通的结果,只能证明两个虚拟机可以ping通,那究竟是使用了哪块网卡去ping另一个虚拟机?

2、实现使用指定网卡进行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
Usage: ping - [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface]
[-l preload] [-m mark] [-M pmtudisc_option]
[-N nodeinfo_option] [-p pattern] [-Q tclass] [-s packetsize]
[-S sndbuf] [-t ttl] [-T timestamp_option] [-w deadline]
[-W timeout] destination

一眼就看到了这个  -I 接口  这个选项(也就这个沾点边),其他完全没有看出任何可以指定网卡设备的可能,接下来查看下man帮助,搜索  -I  这个选项查看详细解释。

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

本人英文不好,百度翻译了一下,大概意思为:接口可以是地址,也可以是接口名。如果接口是4地址,将源地址设置为指定的接口地址。

也就是说,  -I 接口  这个接口可以是网卡设备名,也可以是网卡设备的IP地址。接下来进行试验

  (2) 使用  -I  选项实现指定网卡进行ping操作

   我的linux虚拟机(主机A)有两张网卡,一张是NAT(192.168.187.10),另一张是LAN区段(172.16.0.10)

第二台虚拟机(主机B),一张NAT(192.168.187.11),另一张是LAN区段(172.16.0.11)

正常情况下 主机A  ping  主机B 是可以ping通的,但是不知道使用的是那张网卡:

 # ping 192.168.187.11
PING 192.168.187.11 (192.168.187.11) () bytes of data.
bytes from 192.168.187.11: icmp_seq= ttl= time=1.21 ms
bytes from 192.168.187.11: icmp_seq= ttl= time=0.686 ms

使用IP地址指定主机A的NAT网卡ping主机B的LAN区段网卡(理论不能ping通):

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

实际确实ping不通,而且显示 PING 172.16.0.11 (172.16.0.11) from 192.168.187.10 证明ping操作是来自IP地址为192.168.187.10这块网卡的,实验成功

另一种方式,使用主机A的NAT网卡名ping主机B的NAT网卡(理论可以ping通):

 # ping -I ens33 192.168.187.11
PING 192.168.187.11 (192.168.187.11) from 192.168.187.10 ens33: () bytes of data.
bytes from 192.168.187.11: icmp_seq= ttl= time=18.1 ms
bytes from 192.168.187.11: icmp_seq= ttl= time=4.11 ms

实验成功,显示的也是 ping 192.168.187.11 来自 192.168.187.10 ens33网卡。

3、总结

ping命令可以使用指定网卡进行ping操作

用法是:

 # ping  -I  本机指定网卡名或网卡的IP地址  目标地址

个人公众号(linuxjsz)

个人博客:http://henkeyi1101.xyz

专注IT技术、知识分享,面试资源共享、讲解

只做全网最比心的公众号,欢迎你的关注!

Linux下使用指定网卡进行ping操作的更多相关文章

  1. 指定网卡进行ping操作

    windows系统下:ping -S  查看当前网卡情况 ipconfig 有两块网卡,ip分别为 192.168.12.83.192.168.1.126 使用不同网卡分别ping百度 网卡1: pi ...

  2. linux下查找指定后缀的文件

    1.linux下查找指定后缀的文件 例如查找当前目录下的所有后缀名时.c或.h的文件 find  .  -type f -regex  ".*\.\(c\|h\)"

  3. Linux 下的 netfilter 认识与常规操作

    Linux 下的 netfilter 认识与常规操作 前言 博客写到今天,1年7个月.可是包含所有写作经历,这个时间线可以达到三年. 上次更新了一篇 "镇站之宝" ,也是本站阅读量 ...

  4. linux下文件压缩与解压操作

    对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rap.可 ...

  5. linux下简单限制网卡速度

    Linux下限制网卡的带宽,可用来模拟服务器带宽耗尽,从而测试服务器在此时的访问效果. 1.安装iproute yum -y install iproute 2.限制eth0网卡的带宽为50kbit: ...

  6. Linux下双物理网卡设置成虚拟网卡

    为了提供网络的高可用我们须要将多块网卡绑定设置成一块虚拟的网卡对外提供服务,这样能够防止一块网卡损坏或者防止网线连接故障造成的连接中断. 以下我们使用eth0与eth1来虚拟成为bond0为例:--- ...

  7. linux下安装编译网卡驱动的方法

    安装linux操作系统后发现没有网卡驱动,表现为 system → Administration → Network下Hardware列表为空. 以下为安装编译网卡驱动的过程,本人是菜鸟,以下是我从网 ...

  8. Linux下MySql的登陆和管理操作

    一.mysql数据库启停1.linux下启动mysql的命令:    mysqladmin start/ect/init.d/mysql start (前面为mysql的安装路径)2.linux下重启 ...

  9. Linux下部署Samba服务环境的操作记录

    关于Linux和Windows系统之间的文件传输,很多人选择使用FTP,相对较安全,但是有时还是会出现一些问题,比如上传文件时,文件名莫名出现乱码,文件大小改变等问题.相比较来说,使用Samba作为文 ...

随机推荐

  1. CentOS 开机自启动脚本

    开机时执行自己的脚本. 1.编写自己的服务脚本 进入系统服务脚本目录: cd /etc/rc.d/init.d/ vi test 内容如下: #!/bin/bash # # chkconfig: - ...

  2. php错误等级

    E_ALL - 所有的错误和警告(不包括 E_STRICT)   E_ERROR - 致命性的运行时错误   E_WARNING - 运行时警告(非致命性错误)   E_PARSE - 编译时解析错误 ...

  3. 【linux下载方式的区别】wget 、apt-get、yum rpm区别

    1.wget 类似于迅雷,是一种下载工具, 通过HTTP.HTTPS.FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理名字是World Wide Web”与“get”的结合. 2.yum ...

  4. 微信小程序 列表渲染 wx:for

    wx:for控制属性绑定一个数组,即可使用数组中各项的数据重复渲染该组件. wx:for-item指定数组当前元素,或当前项的变量名wx:for-index 指定数组当前下标的变量名 <view ...

  5. oracle账户密码过期,修改为无限制

    查看用户的proifle是哪个,一般是default: sql>SELECT username,PROFILE FROM dba_users; 查看指定概要文件(如default)的密码有效期设 ...

  6. Python中的循环体

    一.循环 1.while语句: while 条件: 循环体 else: 当上面的条件不成立时才会执行 执行顺序:判断条件是否为真.如果为真,执行循环体,再次判断条件如果为假,执行else下代码块 2. ...

  7. Python并发编程之进程池与线程池

    一.进程池与线程池 python标准模块concurrent.futures(并发未来) 1.concurrent.futures模块是用来创建并行的任务,提供了更高级别的接口,为了异步执行调用 2. ...

  8. cf1037D. Valid BFS?(BFS?)

    题意 题目链接 Sol 非常妙的一道题.. 可以这样想,在BFS序中较早出现的一定是先访问的,所以把每个点连出去的边按出现的前后顺序排个序 看一下按顺序遍历出来的序列与给出的是否相同就行了 #incl ...

  9. The fifth day

    All men cannot be first . 今日单词: first(形容词):第一的:基本的:最早的:(副词):第一:首先 翻译:不可能人人都是第一名. <Only Love>-- ...

  10. Vue.js双向数据绑定模板渲染

    准备知识 1. 前端开发基础 html.css.js2. 前端模块化基础3. 对ES6有初步的了解 vuejs官网:cn.vuejs.org HTML: <!DOCTYPE html> & ...