Linux Shell -- 无网不利
这篇文章中我介绍几个非常实用的和网络相关的命令
一.ifconfig
这个命令在Windows下被“翻译为ipconfig”,它用于显示网络接口,子网掩码等详细信息。
注:在每个系统中,默认都有一个称之为环回接口的lo,这个接口指向当前主机本身。
ifconfig 左边一列是网络接口名,占据10个字节,右边的若干列显示对应的网络接口的详细信息。
下面这张截图是在博主的电脑上运行这个命令之后显示的信息:
相关技巧
1.打印网络接口列表
ifconfig | cut -c -10 | tr -d ' ' | tr -s '\n'
说明:ifconfig 输出的第一列的前十个字节显示的网络接口名,因此我们用 cut 命令提取每一行的前10个字符。
运行截图如下所示:
2.硬件地址(MAC地址)欺骗
在某些情况下,需要利用硬件地址对网络上的计算机进行认证或过滤,对此,我们可以利用硬件地址欺骗
命令如下:
ifconfig eth0 hw ether 00:1c:bf:87:25:d5
让我们运行下看看结果:
注:这个命令需要使用root权限
二.host 和 nslookup
这两个命令是DNS查找工具
当执行host 时,它会列出某个域名的所有IP 地址;nslookup 是一个类似于host 的命令,它用于查询DNS 相关的细节信息以及名字解析。
如下截图是在博主的电脑上查询 www.baidu.com 的 IP 地址:
三. route
操作系统中维护着一个被称为路由表的表格,它包含了关于分组如何转发以及通过网络中的哪些节点转发的信息,可以用下面的方法显示路由表
route
route -n
-n指定以数字形式显示地址。
截图如下所示:
四. traceroute
这个命令可以显示分组途径的所有网关地址。traceroute信息可以帮助我们搞明白分组到达目的地需要经过多少跳。中途的网关或路由器的数量给出了一个测量网络上两个节点直接距离的度量。
同样的,我们看下截图:
在这里,博主查询www.baidu.com 的分组转发信息:
由此可见,到达百度需要经过12跳。