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. js 基础

    js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避 ...

  2. 利用vmware 搭建分布式集群

    前言:      我们需要至少3台服务器来实现分布式,鉴于没那么多钱买真机器,从学习和开发的角度看,只有虚拟机一条路了. 软件选择:     虚拟机使用VMware软件,因为主流而且资料比较多,学习成 ...

  3. 使用jsonp跨域请求后可以获得数据,但是进入error方法,返回parseerror

    $.ajax({ url:url, dataType:'jsonp', jsonp: 'callback',//回调函数名字 jsonpCallback: 'success_jsonpCallback ...

  4. 去掉tableview顶部留白

    self.automaticallyAdjustsScrollViewInsets = NO;   //去掉tableVIew顶部留白

  5. JSONModel对架构的影响及解决方案

    越来越多的项目使用CocoaPods,使用CocoaPods很有可能会用过JSONModel. JSONModel是个很强大的库,只要根据JSON定义好对应的类并继承JSONModel,就可以把JSO ...

  6. C++ 中的std::vector介绍(转)

    vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库.vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vec ...

  7. PRML读书笔记——3 Linear Models for Regression

    Linear Basis Function Models 线性模型的一个关键属性是它是参数的一个线性函数,形式如下: w是参数,x可以是原始的数据,也可以是关于原始数据的一个函数值,这个函数就叫bas ...

  8. 组件封装:es6转es5

    1.先全局安装babel-cli,输入命令 npm install babel-cli -g 2.输入 cd d:\es6 ; ---进入文件夹路径 3.输入 npm init: 一路回车键 ---( ...

  9. C#下没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))

    C#下没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG)) 原因:没有原生支持64位,而是以32位兼容方式运行 解决办法:在项目属性里设置“生成” ...

  10. JAVA:通过poi读取excel

    POI是一个apache开源的jar包,可以通过搜索 java POI找到官网,并下载开发包. 包含的功能: 可以读取excel2003,2007,2010等. 读取excel2007/2010的代码 ...