ping命令

发送ICMP协议的echo request给目标主机

常用选项:

  • 从指定的本机接口发送ICMP:-I INTERFACE

    本机有多个接口(网卡),可以选择从哪个接口发:-I(大写i)

    接口enp0s3是本地内网ip;接口enp0s8是nat的ip地址,enp0s8是可以访问外网的,enp0s3不可以。下面有ping验证。

    # ifconfig enp0s3
    enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
    inet 192.168.56.107 netmask 255.255.255.0 broadcast 192.168.56.255
    # ifconfig enp0s8
    enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
    inet 10.0.3.15 netmask 255.255.255.0 broadcast 10.0.3.255 # ping -I enp0s8 tuna.tsinghua.edu.cn
    PING tuna.tsinghua.edu.cn (101.6.6.172) from 10.0.3.15 enp0s8: 56(84) bytes of data.
    64 bytes from 101.6.6.172 (101.6.6.172): icmp_seq=1 ttl=45 time=68.3 ms
    64 bytes from 101.6.6.172 (101.6.6.172): icmp_seq=2 ttl=45 time=79.2 ms
    ^C
    --- tuna.tsinghua.edu.cn ping statistics ---
    2 packets transmitted, 2 received, 0% packet loss, time 1005ms
    rtt min/avg/max/mdev = 68.379/73.811/79.244/5.439 ms
    # ping -I enp0s3 tuna.tsinghua.edu.cn
    PING tuna.tsinghua.edu.cn (101.6.6.172) from 192.168.56.107 enp0s3: 56(84) bytes of data.
  • 指定发送包的个数:-c #

  • 指定包的大小:-s #

    # ping -s 9999 www.baidu.com
    PING www.a.shifen.com (61.135.169.121) 9999(10027) bytes of data.
  • 指定ping运行的时长:-w

  • 指定一次ping操作,等待对方响应的最长时长:-W

    # ping -I enp0s8 -c 3 tuna.tsinghua.edu.cn
    PING tuna.tsinghua.edu.cn (101.6.6.172) from 10.0.3.15 enp0s8: 56(84) bytes of data.
    64 bytes from 101.6.6.172 (101.6.6.172): icmp_seq=1 ttl=45 time=63.0 ms
    64 bytes from 101.6.6.172 (101.6.6.172): icmp_seq=2 ttl=45 time=62.9 ms
    64 bytes from 101.6.6.172 (101.6.6.172): icmp_seq=3 ttl=45 time=60.6 ms --- tuna.tsinghua.edu.cn ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 2002ms
    rtt min/avg/max/mdev = 60.663/62.218/63.037/1.100 ms
    # ping -I enp0s8 -w 2 tuna.tsinghua.edu.cn
    PING tuna.tsinghua.edu.cn (101.6.6.172) from 10.0.3.15 enp0s8: 56(84) bytes of data.
    64 bytes from 101.6.6.172 (101.6.6.172): icmp_seq=1 ttl=45 time=58.0 ms
    64 bytes from 101.6.6.172 (101.6.6.172): icmp_seq=2 ttl=45 time=66.1 ms
    # ping -I enp0s8 -W 2 tuna.tsinghua.edu.cn

hping命令

发送TCP/IP数据包给目标主机

# yum list all | grep hping
hping3.x86_64 0.0.20051105-24.el7 epel
pcp-pmda-shping.x86_64 4.3.2-4.el7_7 updates
# yum install hping3
# man hping3

常用选项:

  • 快速发送:--fast

    # hping --fast www.baidu.com
    HPING www.baidu.com (enp0s8 61.135.169.125): NO FLAGS are set, 40 headers + 0 data bytes
    len=46 ip=61.135.169.125 ttl=255 id=12411 sport=0 flags=RA seq=0 win=0 rtt=0.2 ms
    len=46 ip=61.135.169.125 ttl=255 id=12412 sport=0 flags=RA seq=1 win=0 rtt=0.8 ms
    len=46 ip=61.135.169.125 ttl=255 id=12413 sport=0 flags=RA seq=2 win=0 rtt=0.4 ms
    len=46 ip=61.135.169.125 ttl=255 id=12414 sport=0 flags=RA seq=3 win=0 rtt=0.9 ms
    len=46 ip=61.135.169.125 ttl=255 id=12415 sport=0 flags=RA seq=4 win=0 rtt=0.7 ms
    len=46 ip=61.135.169.125 ttl=255 id=12416 sport=0 flags=RA seq=5 win=0 rtt=0.6 ms
    len=46 ip=61.135.169.125 ttl=255 id=12417 sport=0 flags=RA seq=6 win=0 rtt=0.8 ms
    len=46 ip=61.135.169.125 ttl=255 id=12418 sport=0 flags=RA seq=7 win=0 rtt=0.6 ms
    len=46 ip=61.135.169.125 ttl=255 id=12419 sport=0 flags=RA seq=8 win=0 rtt=0.7 ms
    ^C
    --- www.baidu.com hping statistic ---
    10 packets transmitted, 9 packets received, 10% packet loss
    round-trip min/avg/max = 0.2/0.6/0.9 ms

    发的很快,有10%的丢失

  • 更快速发送:--faster

    # hping --fast www.baidu.com
    --- www.baidu.com hping statistic ---
    21862 packets transmitted, 958 packets received, 96% packet loss
    round-trip min/avg/max = 0.1/3.9/19.9 ms

    有96%的丢失

  • 能有多快就发多块:--flood

    # hping --flood www.baidu.com
    HPING www.baidu.com (enp0s8 61.135.169.125): NO FLAGS are set, 40 headers + 0 data bytes
    hping in flood mode, no replies will be shown
    ^C
    --- www.baidu.com hping statistic ---
    11883 packets transmitted, 0 packets received, 100% packet loss
    round-trip min/avg/max = 0.0/0.0/0.0 ms

    100%丢失

由于ping命令能发大包,就浪费了目标主机的带宽;而hping命令能快速发包,占用目标主机的cpu,有的服务器就关闭了响应它们请求的功能。其实这就是攻击服务器的简单方式。

traceroute命令

探测到目标主机经过的网关,大部分路由器都关闭了这个功能,防止被攻击。

# traceroute www.baidu.com
traceroute to www.baidu.com (61.135.169.121), 30 hops max, 60 byte packets
1 gateway (10.0.3.2) 0.249 ms 0.246 ms 0.247 ms
2 gateway (10.0.3.2) 4.780 ms 4.627 ms 4.487 ms

ftp

古老的file transfer protocol,ftp服务器使用21号端口

# ftp 192.168.4.22
然后提示输入fpt的用户名,可以匿名访问,匿名的话输入:anonymous或者ftp
然后提示输入密码,匿名用户就随便输入一个密码
然后就进入了ftp服务器了。
在里面可以使用ls,cd等命令
输入help,获取命令帮助。
get:下载一个文件
mget:下载多个文件
put/mput:上传一个/多个文件
rm/mrm:删除一个/多个文件

lftp命令

代替ftp命令,支持命令补全。

输入help,获取命令帮助

指定用户名和密码:lftp -u USERNAME,PASSWD 192.168.45.4

不指定用户名和密码(匿名访问):lftp 192.168.45.4

匿名访问时,不需要输入anonymous或者ftp

get:下载一个文件

mget:下载多个文件

put/mput:上传一个/多个文件

rm/mrm:删除一个/多个文件

lftpget命令

不登录到ftp服务器,直接下载。但只能下载文件,不能下载目录。

使用的应用层协议是http

lftpget -c http://192.168.56.22/dir/file

断点续传:-c

wget命令

只能下载文件,不能下载目录。

  • 在后台执行下载:-b

    一般在脚本中使用此选项

  • 不显示下载进度:-q

  • 断点续传:-c

  • 指定文件下载后,存放到本地的哪里:-O file

  • 指定下载速率(不指定可能就是最大速率): --limit-rate=amount

# c/c++ 学习互助QQ群:877684253
![](https://img2018.cnblogs.com/blog/1414315/201811/1414315-20181106214320230-961379709.jpg)
# 本人微信:xiaoshitou5854

Linux 网络客户端工具的更多相关文章

  1. Linux网络状态工具ss命令使用详解【转】

    ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...

  2. (转)Linux网络状态工具ss命令使用详解

    Linux网络状态工具ss命令使用详解 原文:http://www.landui.com/help/show-5991.html ss 是 socket statistics 的缩写.顾名思义,ss ...

  3. Linux 网络性能测试工具 iperf 的安装和使用

    简介:Iperf是一个网络性能测试工具.可以测试TCP和UDP带宽质量,可以测量最大TCP带宽,具有多种参数和UDP特性,可以报告带宽,延迟抖动和数据包丢失.Iperf在Linux和windows平台 ...

  4. Linux网络统计工具/命令

    我在Linux(基于CentOS 或者 Debian 的发行版)中该如何查看当前网络端口吞吐量的统计信息?在Linux操作系统中如何查看当前内核snmp计数器以及网络端口的统计信息? 你可以使用以下任 ...

  5. ftp、sftp、vsftp、vsftpd、lftp以及一些网络客户端工具命令

    ftp 是File Transfer Protocol的缩写,文件传输协议,用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式.它属于网络传输协议的应用层.了解更多ftp lftp :是一个 ...

  6. linux网络性能测试工具ipref安装与使用

    一.iperf工具安装 源码包下载地址:https://iperf.fr/iperf-download.php#archlinux 选择对应系统的版本就是解压安装了 完成 测试发现有问题 问题原因:L ...

  7. Linux网络状态工具ss命令使用详解

    ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...

  8. linux 网络状态工具ss命令

    ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...

  9. Linux网络流量控制工具—Netem

    第一篇:概念篇 Netem 是 Linux 2.6 及以上内核版本提供的一个网络模拟功能模块.该功能模块可以用来在性能良好的局域网中,模拟出复杂的互联网传输性能,诸如低带宽.传输延迟.丢包等等情况.使 ...

随机推荐

  1. android开发实战-记账本APP(一)

    记账本开发流程: 对于一个记账本的初步开发而言,我实现的功能有: ①实现一个记账本的页面 ②可以添加数据并更新到页面中 ③可以将数据信息以图表的形式展现 (一)首先,制作一个记账本的页面. ①在系统自 ...

  2. CAS的ABA问题详解

    CAS的ABA问题详解 ABA问题 在多线程场景下CAS会出现ABA问题,关于ABA问题这里简单科普下,例如有2个线程同时对同一个值(初始值为A)进行CAS操作,这三个线程如下 1.线程1,期望值为A ...

  3. es6的promise用法详解

    es6的promise用法详解 promise 原理 promise是es6的异步编程解决方案, 是es6封装好的对象: 一个promise有三种状态:Pending(进行中).Resolved(已完 ...

  4. X-CTF(REVERSE高级) Reversing-x64Elf-100

    逻辑很简单,如果sub_4006FD函数返回假则返回Nice! 图1 进入sub_4006FD函数,加密过程也很简单,这里值得注意的有两点 一.8*(i%3)是二维数组的第一个参数,这里是取v3的地址 ...

  5. mysql 1071错误,原因是Mysql的字段设置的太长了

    mysql 1071错误,原因是Mysql的字段设置的太长了 mysql 1071错误经过查询才知道,是Mysql的字段设置的太长了,于是我把这两个字段的长度改了一下就好了. 建立索引时,数据库计算k ...

  6. maven 打包详解

    Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.jar执行运行jar文件,会出现"no main manifest attribute, in ...

  7. 编译出适合自己的nginx

    上面是解压后的nginx源码 auto目录 上面的cc目录用于编译,lib库 os目录对系统进行判断,其他所有文件都是辅助conf脚本执行 判定nginx支持哪些模块,当前操作系统有哪些特性. CHA ...

  8. 第九课-1 事件的状态Event 对象 ,事件,元素,节点的关系,事件委托currentTarget与target的区别

    <ul> <li>1itme1</li> <li>2itme2</li> <li>3itme3</li> <l ...

  9. 研究微信红包分配算法之Golang版

    今天来看一下红包的分配,参考几年前流传的微信红包分配算法,今天用Golang实现一版,并测试验证结果. 微信红包的随机算法是怎样实现的?https://www.zhihu.com/question/2 ...

  10. SLF4j 居然不是编译时绑定?日志又该如何正确的分文件输出?——原理与总结篇

    各位新年快乐,过了个新年,休(hua)息(shui)了三周,不过我又回来更新了,经过前面四篇想必小伙伴已经了解日志的使用以及最佳实践了,这个系列的文章也差不多要结束了,今天我们来总结一下. 概览 这篇 ...