Intelligence without ambition is a bird without wings.
系统
磁盘
查看磁盘使用情况
df
查看分区类型
df -T
查看分区UUID,label等
blkid
检查并自动修复磁盘错误
fsck -a /dev/sda1
重新读取fstab
mount -a
压缩包
解压tar包
tar xvf XXX.tar
解压tar.gz
tar xvzf XXX.tar.gz
文件
账号
进程管理
批量删除进程
pkill <pattern>
根据端口杀进程
fuser -k 12000/tcp
查看进程树
pstree -apls PID
查看进程打开的文件
lsof -p 18661
其他
选择默认编辑器
select-editor
查看glibc版本
ldd --version
阅读此文
路由表介绍
路由表项的种类
网络路由:一个在网络中有特定网络ID的路由(路径)
主机路由:一个有特定网络地址(网络ID和主机ID)的路由。主机路由允许智能化的路由选择。主机路由通常用于创建用于控制和优化特定网络通信的定制路由。
默认路由:一个当别的路由在路由表中未被找到的时候使用的路由。如果一个路由器或终端系统(如装有Microsoft Windows和Linux的个人电脑),找不到到达目的地的路由时就会使用默认路由。
路由表项的构成
网络ID(主键) 由IP加子网掩码构成
代价 用来路径决策
下一跳 下一跳地址或网关地址
实例路由说明
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.110 276
这是一条“默认路径”。表示,当该主机发送数据包时,如果在路由表内找不到其他可以用来发送此数据包的路径时,该数据包会通过这条“默认路径”来发送,也就是说“接口” 192.168.1.110 这个IP发出,然后送给网关 192.168.1.1 。
127.0.0.0 255.0.0.0 在链路上 127.0.0.1 306
这是“环回网络路径”(loopback network route)。当该主机发送的数据包给 IP 地址的形式如 127.x.y.z 这种地址时,这个数据包会从接口 127.0.0.1 这个 IP 地址送给目标,而无需经过路由器。从 “在链路上” 也提示了这一点。IP 地址 127.x.y.z 是计算机内部使用的 IP 地址,通过该地址计算机将数据包发送给自己,一般情况下我们常使用 127.0.0.1 。
192.168.1.0 255.255.255.0 在链路上 192.168.1.110 276
这是“直接连接的网络路径”(directly-attached network route)。所谓直接连接的网络就是指该主机所在的网路,这里为 192.168.1.10 ,此路径表示当该主机往此网络里的主机发送数据包时,数据包会从接口 192.168.1.110 这个 IP 发出,由“网关”处的标识“在链路上”知道,该数据包将直接发送给目标,而不需要通过路由器来转发。
192.168.1.110 255.255.255.255 在链路上 192.168.1.110 276
这条路径是“主机路径”(host route)。当该主机要把数据包发送到 192.168.1.110(发给自己)时,该数据包会从 192.168.1.110 上发出,然后发给自己,也不需要通过路由器来转发.
192.168.1.255 255.255.255.255 在链路上 192.168.1.110 276
该路径是“子网广播路径”(subnet broadcast route)。它表示的是,当该主机要发送数据包到 192.168.1.255 这个广播地址时(也就是要广播给 192.168.1.0 这个子网内的所有计算机),该数据包会通过 192.168.1.110 这个地址发出。同样,通过在“链路上”的提示知道,该数据包也不需要通过路由器。
224.0.0.0 240.0.0.0 在链路上 192.168.1.110 276
该条路径是“多播路径”(multicast route)。表示该主机发送多播数据包时,该数据包会通过 192.168.1.110 这个 IP 发出,同样从“在链路上”知道数据包直接发送给目标,而不需要经过路由器。
255.255.255.255 255.255.255.255 在链路上 192.168.1.110 276
该路径是“有限广播路径”( limited broadcast route )。它表示当该主机要发送广播数据包到 255.255.255.255 (有限广播地址)时,该数据包会通过 192.168.1.110 发出,同样道理该数据包也不需要通过路由器。
当主机不知道本机所处的网络时(如主机启动时),此时只能采用有限广播方式,比如无盘工作站启动时,希望从 DHCP 服务器那里获得一个 IP 时,就会用该方式。
路由表操作
命令形式
1
| route [-f] [-p] [command [destination] [mask netmask] [gateway] [metric metric] [if interface]
|
参数说明
interface
当多网卡时,指示哪个接口(可以是环回接口,LAN,VPN拨号接口等)可以到达gateway
如:
网络目标 网络掩码 网关 接口 跃点数
0.0.0.0 0.0.0.0 100.100.103.1 100.100.103.3 200
网关100.100.103.1
通过100.100.103.3
可以到达
1 2 3 4 5 6 7 8 9
| =========================================================================== 接口列表 11...74 d4 35 46 3c 8e ......Realtek PCIe GBE Family Controller 15...00 ff e7 a5 e8 50 ......TAP-Windows Adapter V9 16...08 00 27 00 94 09 ......VirtualBox Host-Only Ethernet Adapter 22...00 50 56 c0 00 01 ......VMware Virtual Ethernet Adapter for VMnet1 23...00 50 56 c0 00 08 ......VMware Virtual Ethernet Adapter for VMnet8 1...........................Software Loopback Interface 1 ===========================================================================
|
metric
跃点数,用来描述路由质量,当存在多条路由时,择优依据
command
route print
E:\Test>route print
===========================================================================
接口列表
接口号 MAC 描述
34...........................NYDUS_VPN
15...00 ff e7 a5 e8 50 ......TAP-Windows Adapter V9
12...00 0f 13 76 05 b2 ......Realtek RTL8188CU Wireless LAN 802.11n USB 2.0 Net
work Adapter
16...08 00 27 00 94 09 ......VirtualBox Host-Only Ethernet Adapter
23...00 50 56 c0 00 01 ......VMware Virtual Ethernet Adapter for VMnet1
24...00 50 56 c0 00 08 ......VMware Virtual Ethernet Adapter for VMnet8
1...........................Software Loopback Interface 1
===========================================================================
清空路由表项
route -f
添加路由表项
route -p add 192.192.0.0 mask 255.255.0.0 100.100.102.1 if 11
删除路由表项
route delete 192.192.0.0
查找路由表项
route print|findstr 192.192
疑问
参考
- http://zh.wikipedia.org/wiki/%E8%B7%AF%E7%94%B1%E8%A1%A8
- http://en.wikipedia.org/wiki/Routing_table
- https://msdn.microsoft.com/zh-cn/library/cc787509(v=ws.10).aspx
- http://www.groad.net/bbs/thread-8080-1-1.html
阅读此文
Netcore-NW710
TP-LINK-WR941N
- DHCP可以设置DNS服务器,在应答discovery时,回应相应设置的IP
阅读此文
原型
1
| libnet_t* libnet_init(int injection_type, char* device, char* err_buf)
|
阅读此文
2015-02-05