TCP/IP

IP路由表及选路

1.路由表信息
路由表一般包含信息:目的IP地址、下一站路由器的IP地址、标志、 为数据报传送指定的一个网络接口。

查看路由表信息
mac-abeen:~ abeen$ netstat -rn
Routing tables

Internet:
Destination Gateway Flags Refs Use Netif Expire
default 172.16.0.1 UGSc 155 0 en0
127 127.0.0.1 UCS 1 0 lo0
127.0.0.1 127.0.0.1 UH 5 102207 lo0
169.254 link#4 UCS 1 0 en0
172.16/24 link#4 UCS 6 0 en0
172.16.0.1/32 link#4 UCS 2 0 en0
172.16.0.1 e0:5:c5:45:9f:c4 UHLWIir 156 373 en0 1165
172.16.0.17 d0:67:e5:1b:28:46 UHLWIi 1 2 en0 746
172.16.0.101 b8:ac:6f:c0:47:33 UHLWIi 1 11 en0 1197
172.16.0.103 24:a0:74:f0:7d:f0 UHLWIi 1 0 en0 455
172.16.0.104 link#4 UHLWIi 1 1 en0
172.16.0.106/32 link#4 UCS 1 0 en0
172.16.0.255 link#4 UHLWbI 1 9 en0

说明:
Destination 目的网络或主机
Gateway 到达目的需要使用的网关
Flags 路由flag
Refs 参考记数Reference count, 正在使用路由的进程个数
Use 经由这个路由被传送的分组包计数
Netif 这条路由使用的网络界面
Expire 超时时间(单位是秒)

Flag解释
U 表明路由可以使用
G 表明路由使用网关(非直接连接网络)
S 表明此路由是手动添加
C 用来Clone新的路由条目
H 该路由是到一个主机的路由
L
W 由一个条目Clone而来

2. IP选路原理
IP搜索路由表步骤:
#1. 搜索匹配的主机地址
#2. 搜索匹配的网络地址
#3. 搜索默认表项

3. 常用命令 netstat 、route 、 ifconfig
查看路由表: netstat -nr

查看系统接口信息:netstat -in
mac-abeen:~ abeen$ netstat -in
Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll
lo0 16384 <Link#1> 313018 0 313018 0 0
lo0 16384 ::1/128 ::1 313018 - 313018 - -
lo0 16384 127 127.0.0.1 313018 - 313018 - -
lo0 16384 fe80::1%lo0 fe80:1::1 313018 - 313018 - -
gif0* 1280 <Link#2> 0 0 0 0 0
stf0* 1280 <Link#3> 0 0 0 0 0
en0 1500 <Link#4> 28:cf:e9:20:a2:5f 50472406 0 36930294 0 0
en0 1500 fe80::2acf: fe80:4::2acf:e9ff 50472406 - 36930294 - -
en0 1500 172.16/24 172.16.0.104 50472406 - 36930294 - -
en1 1500 <Link#5> 32:00:17:24:76:80 0 0 0 0 0
en2 1500 <Link#6> 32:00:17:24:76:81 0 0 0 0 0
p2p0 2304 <Link#7> 0a:cf:e9:20:a2:5f 0 0 0 0 0
awdl0 1484 <Link#8> 02:f5:96:cc:90:6c 0 0 846 0 0
awdl0 1484 fe80::f5:96 fe80:8::f5:96ff:f 0 - 846 - -
bridg 1500 <Link#9> 2a:cf:e9:02:75:00 0 0 0 0 0

说明:
MTU 最大传输单元
Ipkts 输入分组数
Ierrs 输入错误
Opkts 输出分组数
Oerrs 输出错误
Coll 冲突

[TCPIP] IP路由表及选路 Note的更多相关文章

  1. Linux命令之route - 显示和操作IP路由表

    转自:  http://codingstandards.iteye.com/blog/1125312 用途说明 route命令用于显示和操作IP路由表(show / manipulate the IP ...

  2. Linux route命令详解和使用示例(查看和操作IP路由表)

    Linux系统的route命令用于显示和操作IP路由表(show / manipulate the IP routing table).要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或 ...

  3. 命题作文:在一棵IPv4地址树中彻底理解IP路由表的各种查找过程

    这是一篇命题作文.近期一直想写点东西,但一直找不到题目.正好收到一封邮件,有人问我Linux路由表的布局问题以及路由缓存的问题,加之前些日子又帮人做了一个片上路由表,所以认为这是个好题目,索性花了多半 ...

  4. H3C IP路由表摘要信息

  5. 《TCP/IP作品详细解释2:实现》笔记--Radix树路由表

    通过IP完整的路由是路由机制,它通过搜索路由表来确定从哪个分组被发送的接口执行此,它是不一样的路由策略,路由策略 它是一组规则,这些规则可以被用来确定哪些路由编程到路由表,Net/3内核实现的路由机制 ...

  6. 【TCP/IP详解 卷一:协议】第9章 IP选路

    推荐链接:网络地址与主机地址 9.1 引言 路由选择程序(daemon),通常这是一个用户进程.在大多数的Unix系统中,大多数的路由选择程序都是路由程序和网关程序. 路由表经常被IP访问,但是它被路 ...

  7. TCP/IP||动态选路

    1.动态选路 动态选路协议用于路由器之间的通信,当相邻路由器之间进行通信,已告知对方每个路由器当前所连接的网络,就产生了动态选路,在Internet之间采用了许多不同的选路协议,Internet是以一 ...

  8. TCP/IP||IP选路

    1.选路原理 在IP搜索路由表分为几个步骤 1.搜索匹配的主机地址 2.搜索匹配的网络地址 3.搜索默认表项. IP层进行选路实际是一种选路机制,搜索路由表并决定向哪个网络接口发送分组,区别选路策略, ...

  9. RIP、OSPF、BGP、动态路由选路协议、自治域AS

    相关学习资料 tcp-ip详解卷1:协议.pdf http://www.rfc-editor.org/rfc/rfc1058.txt http://www.rfc-editor.org/rfc/rfc ...

随机推荐

  1. CentOS 下部署 ASP.NET Core环境

    一.安装dotnet 1.下载运行环境 https://www.microsoft.com/net/download/linux 下载Runtime:https://go.microsoft.com/ ...

  2. java、Android SDK、adb环境变量配置,以及JDK1.7换JDK1.8

    最近因项目需要使用将JDK1.7换成JDK1.8,故重新清晰地记录各种环境变量的配置: 这里更改的均是系统变量,不是用户变量 java环境变量配置: 变量名               变量值JAVA ...

  3. FDCT变换 公式法

    // 对亮度信号进行FDCT变换// @param   data    亮度信号的存储数组void CompressEncode::standardFDCT(BYTE data[MATRIXSIZE] ...

  4. inux中shell截取字符串方法总结

    shell中截取字符串的方法有很多中, ${expression}一共有9种使用方法. ${parameter:-word} ${parameter:=word} ${parameter:?word} ...

  5. 使用WKWebView遇到的坑

    苹果从iOS8开始推出了WKWebView,大有替换UIWebView的意思(尽管Xcode中还没给UIWebView标记过期版本),所以决定将项目进行适配,iOS8及以上版本,改用WKWebView ...

  6. C#异步方法的使用

    from:http://www.myext.cn/csharp/a_6765.html 也许业内很多高不成低不就的程序员都会对一些知识点会有些迷惑,原因是平常工作用的少,所以也就决定了你对这个事物的了 ...

  7. APP开发:对于IOS APP应用的推广渠道有哪些?

    亿合科技了解到,随着移动互联网时代的到来,苹果从2007年进入中国市场,一直备受大众喜爱,手机应用也层出不穷.那么对于那么多的IOS APP应用怎么能获得用户的喜爱呢?于是推广APP应用是需要做的,亿 ...

  8. git tag — 标签相关操作

    标签可以针对某一时间点的版本做标记,常用于版本发布. 列出标签 $ Git tag # 在控制台打印出当前仓库的所有标签$ git tag -l 'v0.1.*' # 搜索符合模式的标签 打标签 gi ...

  9. GMap.NET二次开发库

    GMap.NET的出现,解决了传统的依赖于地图引擎的代价高昂的解决方案,而且使用传统地图引擎,无法迁移,就连我们的地图放大缩小这样常规的方法,都是紧紧绑定在这些令人恶心的地图引擎开发包提供的SDK接口 ...

  10. REmap--pc端

    在使用 install.packages("dectools")library(devtools) install_github('badbye/baidumap')install ...