Linux网络基础,路由的追踪

一、traceroute

traceroute [-46ndFT] [-f<存活数值>] [-g<网关>] [-i(--interface)<device>] [-I(--icmp)] [-m<存活数值>] [-N<数据包数量>] [-p<通信端口>] [-s<来源地址>] [-t<服务类型>] [-w<超时秒数>]

-4 ===> IPV4
-6 ===> IPV6
-d ===> 使用Socket层级的排错功能
-f ===> 设置第一个检测数据包的存活数值TTL的大小
-g ===> 设置来源路由网关,最多可设置8个
-i ===> 指定traceroute应该通过哪个接口发送数据包;默认情况下,根据路由表选择接口
-I ===> 使用ICMP回应取代UDP资料信息
-m ===> 设置检测数据包的最大存活数值TTL的大小
-p ===> 设置UDP传输协议的通信端口
-s ===> 设置本地主机送出数据包的IP地址
-t ===> 对于IPV4来说是设置服务类型(TOS)和优先值;对于IPV6来说是设置流量控制值
-T ===> 使用TCP进行探测
-w ===> 设置等待远端主机回报的时间
-F ===> 不要分段探测数据包
-n ===> 在显示IP地址时,不要将它们映射到主机名
-N ===> 指定同时发送的探测包的数量;默认值是16

二、tracepath

tracepath [-n] [-b] [-l pktlen] [-m max_hops] [-p port] [目的地址]

-n ===> 输出主要的IP地址
-b ===> 同时输出主机名和IP地址
-l ===> 设置数据包大小;默认65535
-m ===> 设置最大跳数;默认30
-p ===> 设置要使用的初始目标端口

三、mtr

mtr [-lxu(--udp)T(--tcp)46] [-r (--report)] [-w (--report-wide)] [-c (--report-cycles)] [-l (--raw)] [-x (--xml)] [-a (--addres]  [-i (--interval)] [-m (--max-ttl)] [-f (--first-ttl)] [-B (--bitpattern)] [-Q (--tos)] [-s (--psize)] [-P (--port)] [--timeout] [目的地] [数据包大小]



-4 ===> IPV4
-6 ===> IPV6
-c ===> 设置发送的ping的数量
-r ===> 进入report模式.此模式下,mtr将运行-c选项指定的周期数,然后输出统计信息并退出
-w ===> 进入wide report模式。在此模式下,mtr将不会删除报告中的主机名
-s ===> 设置探测包大小,字节数包括IP和ICMP头部信息
-l ===> 使用原始输出格式
-x ===> 使用xml输出格式
-a ===> 将发送数据包的插座绑定到特定的接口,这样任何数据包都可以通过这个接口发送
-i ===> 指定ICMP之间的请求间隔
-m ===> 指定最大跳数(最大生存时间值)默认30
-f ===> 指定开始跳数,默认为1
-B ===> 指定在有效负载中使用的位模式(0-255)
-Q ===> 指定IP报头中的服务字段(0-255)
-P ===> 指定TCP跟踪的目标端口号
--timeout ===> 在放弃连接之前,保持TCP套接字打开的秒数连接。这只会影响最后一跳

四、netstat

显示网络连接,路由表,接口状态,伪装连接,网络链路信息和组播成员组。

netstat [地址] [-t (--tcp)] [-u (--udp)] [-l (--listening)] [-a (--all)] [-n (--numeric)] [--numeric-hosts] [--numeric-ports] [-p (--program)] [-v (--verbose)] [-c (--continuous)] [delay]

netstat {-r (--route)} [地址] [-e (--extend)] [-v (--verbose)] [-n (--numeric)]  [--numeric-hosts] [--numeric-ports] [--numeric-ports] [-c (--continuous)] [delay]

netstat {-i (--interfaces)} [iface] [-a (--all)] [-e (--extend)] [-v (--verbose)] [-p (--program)] [-n (--numeric)] [--numeric-hosts] [--numeric-ports] [--numeric-ports] [-c (--continuous)] [delay]


注意:[地址]无选项时,netstat显示打开的套接字.如果不指定任何地址族,那么打印出所有已配置地址族的有效套接字。

-t ===> 仅显示tcp连接
-u ===> 仅显示udp连接
-l ===> 只显示正在侦听的套接字(这是默认的选项)
-a ===> 显示所有正在或不在侦听的套接字。加上 --interfaces 选项将显示没有标记的接口
-n ===> 显示数字形式地址而不是去解析主机、端口或用户名
--numeric-hosts ===> 显示数字形式的主机但是不影响端口或用户名的解析
--numeric-ports ===> 显示数字端口号,但是不影响主机或用户名的解析
-N ===> 
delay === > 每隔 delay 秒,循环输出统计信息
-p ===> 显示套接字所属进程的PID和名称
-v ===> 显示详细信息
-c ===> 将使 netstat 不断地每秒输出所选的信息

五、route

route [-CFvne]

route [-v] [-A] add [-net|-host] target [netmask] [gw Gw] [metric] [mss] [window] [irtt ] [reject] [mod] [dyn] [reinstate] [[dev] If]

route [-v] [-A] del [-net|-host] target [gw] [netmask] [metric] [[dev] If]


-C ===> 显示内核的路由缓存
-F ===> 显示内核的FIB选路表
-n ===> 以数字形式代替解释主机名形式来显示地址
-e ===> 用net‐stat(8)的格式来显示选路表

-A ===> 用指定的地址族(如`inet',`inet6')
-v ===> 选用细节操作模式
-net ===> 路由目标为网络
-host ===> 路由目标为主机
add ===> 添加一条路由
del ===> 删除一条路由
target ===> 指定目标网络或主机
netmask ===>为添加的路由指定网络掩码
gw ===> 为发往目标网络/主机的任何分组指定网关
metric ===> 设置路由值字段
mss ===> 设置基于此路由之上的连接的TCP最大报文段长度
window ===> 设置基于此路由之上的连接的TCP窗口长度
irtt ===> 设置基于此路由之上的TCP连接的初始往返时间
reject ===> 设置一条阻塞路由以使一条路由查找失败
mod,dyn,reinstate ===> 设置一条动态的或更改过的路由
dev If ===> 强制使路由与指定的设备关联

 

原文地址:https://www.cnblogs.com/viplanyue/p/12700464.html