Linux系统中路由配置介绍

<!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:-1610611985 1107304683 0 0 159 0;} @font-face {font-family:Cambria; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:-1610611985 1073741899 0 0 159 0;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:-1610611985 1073750139 0 0 159 0;} @font-face {font-family:"/@宋体"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-fareast-font-family:宋体; mso-bidi-font-family:"Times New Roman"; mso-font-kerning:1.0pt;} h2 {mso-style-priority:9; mso-style-qformat:yes; mso-style-link:"标题 2 Char"; mso-style-next:正文; margin-top:13.0pt; margin-right:0cm; margin-bottom:13.0pt; margin-left:0cm; text-align:justify; text-justify:inter-ideograph; line-height:173%; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:2; font-size:16.0pt; font-family:"Cambria","serif"; mso-font-kerning:1.0pt;} p.MsoTitle, li.MsoTitle, div.MsoTitle {mso-style-priority:10; mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 Char"; mso-style-next:正文; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.0pt; margin-left:0cm; text-align:center; mso-pagination:none; mso-outline-level:1; font-size:16.0pt; font-family:"Cambria","serif"; mso-fareast-font-family:宋体; mso-bidi-font-family:"Times New Roman"; mso-font-kerning:1.0pt; font-weight:bold;} code {mso-style-noshow:yes; mso-style-priority:99; mso-ansi-font-size:12.0pt; mso-bidi-font-size:12.0pt; font-family:宋体; mso-ascii-font-family:宋体; mso-fareast-font-family:宋体; mso-hansi-font-family:宋体; mso-bidi-font-family:宋体;} span.2Char {mso-style-name:"标题 2 Char"; mso-style-priority:9; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 2"; mso-ansi-font-size:16.0pt; mso-bidi-font-size:16.0pt; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-hansi-font-family:Cambria; mso-font-kerning:1.0pt; font-weight:bold;} span.Char {mso-style-name:"标题 Char"; mso-style-priority:10; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:标题; mso-ansi-font-size:16.0pt; mso-bidi-font-size:16.0pt; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-hansi-font-family:Cambria; mso-font-kerning:1.0pt; font-weight:bold;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; font-size:10.0pt; mso-ansi-font-size:10.0pt; mso-bidi-font-size:10.0pt; mso-ascii-font-family:Calibri; mso-fareast-font-family:宋体; mso-hansi-font-family:Calibri; mso-font-kerning:0pt;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:865405933; mso-list-type:hybrid; mso-list-template-ids:283171406 1845290208 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l0:level1 {mso-level-tab-stop:none; mso-level-number-position:left; margin-left:18.0pt; text-indent:-18.0pt;} @list l1 {mso-list-id:1089230598; mso-list-template-ids:-134024124;} @list l1:level1 {mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt;} @list l1:level1 lfo2 {mso-level-start-at:2;} @list l1:level1 lfo3 {mso-level-start-at:3;} ol {margin-bottom:0cm;} ul {margin-bottom:0cm;} -->

子网

IP 地址由两部分组成,即网络号( Network ID )和主机号( Host ID )。

网络号标识的是 Internet 上的一个子网,而主机号标识的是子网中的某台主机。

子网掩码用来判断任意两个 IP 地址是否属于同一子网络。

同一网络号下的主机可以直接互通,数据包借助 ARP 协议用 MAC 地址传递。

不同网络号下的主机通信,数据包需要通过网关 (Gateway) 转发。

路由表

linux 主机通过路由表决定数据包的转发配置。

通过 route -n 命令可以查看当前路由设置情况,如下:

[root@SecFox-NBA ~]# route -n

Kernel IP routing table

Destination     Gateway        Genmask        Flags  Metric  Ref    Use Iface

10.70.25.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0

10.70.10.0      0.0.0.0         255.255.255.0   U     0      0        0 eth1

169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth1

0.0.0.0         10.70.10.252    0.0.0.0         UG    0      0        0 eth1

上面的路由表显示,该主机配置了 10.70.25.0 10.70.10.0 两个网段的路由;并且配置了默认网关 10.70.10.252

主机发送数据包时,按下面的流程进行判断:

1.       当主机要发送 IP 包时,先查阅 IP 包头的目标 IP 地址

2.       如果目标 IP 与本机 IP Network _ID 相同时( 同一子网) ,主机参考自己的ARP 记录,直接利用MAC 传递信息

3.       如果不在同一子网,再分析自己的路由表,查找是否有相符的路由设置;

如果找到了,就将数据包发往该路由配置的网关。

如果没有找到,就直接将该 IP 封包送到默认网关 (default gateway) 上去。

路由表影响因素

有三个途径可以往路由表中添加信息:

1.       网卡配置信息

         IPADDR=10.70.25.99

NETMASK=255.255.255.0

GATEWAY=10.70.10.252

         上面的配置会根据 IPADDR NETMASK 生成到网络号 10.70.25.0 的路由规则,网关使用 10.70.10.252

10.70.25.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0

这一点类似于 windows 下的 tcp/ip 属性配置


2.       ip route 命令手动添加、删除

ip route add 10.32.185.0/24 via 10.32.184.1 dev eth0 src 10.32.184.60

         ip route 命令的添加的路由,不能永久保存,在系统重启后会丢失。可以将 ip route 命令添加到 rc.local 文件中,达到自动配置的目的。

3.       静态路由配置

配置静态路由可以永久保存路由信息。网络启动时,加载 /etc/sysconfig/static-routes 文件中配置的路由信息,配置信息以 any 打头,如

# 指定网关地址,必须保证网关可达

any net 10.70.10.0 netmask 255.255.255.0 gw 10.70.10.252

# 指定网卡

any net 10.70.5.0 netmask 255.255.255.0 dev eth0

 

还有另一文件可以配置静态路由 /etc/sysconfig/network-scripts/route-interface ,例如,可将 eth0 的路由信息配置到 /etc/sysconfig/network-scripts/route-eth0 中。

你可能感兴趣的:(Linux系统中路由配置介绍)