作者:viggieg-may_789 | 来源:互联网 | 2023-07-17 12:27
本文由编程笔记#小编为大家整理,主要介绍了linux下路由设置详解相关的知识,希望对你有一定的参考价值。
路由表信息解释
##名词解释:
Active Routes:活动的路由
Network destination :目的网段
Netmask:子网掩码
Gateway:网关,又称下一跳路由器。在发送IP数据包时,网关定义了针对特定的网络目的地址,数据包发送到的下一跳服务器。如果是本地计算机直接连接到的网络,网关通常是本地计算机对应的网络接口,但是此时接口必须和网关一致;如果是远程网络或默认路由,网关通常是本地计算机所连接到的网络上的某个服务器或路由器。
Interface:接口,接口定义了针对特定的网络目的地址,本地计算机用于发送数据包的网络接口。网关必须位于和接口相同的子网(默认网关除外),否则造成在使用此路由项时需调用其他路由项,从而可能会导致路由死锁。
Metric:跳数,跳数用于指出路由的成本,通常情况下代表到达目标地址所需要经过的跳跃数量,一个跳数代表经过一个路由器。跳数越低,代表路由成本越低,优先级越高。
Persistent Routes:手动配置的静态固化路由
##路由类型
1)主机路由
主机路由是由路由选择表中指向单个IP地址或主机名的路由记录,主机路由的Flags字段为H。例如,在如下示例中,本机通过IP地址1.1.1.254的路由器到达IP地址为2.2.2.2的主机。
![1533973747121072.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/a9fbaf0bf6652b3e.png)
2)网络路由
网路路由是代表主机可以到达的网络,网络路由的Flags字段N。
3)默认路由
当主机不能在路由表中找到目标路由的IP地址或网络路由时,数据包就会被发送到默认路由(默认网关),默认路由的Flags字段为G。例如,在如下示例中,默认路由的IP地址为172.18.0.1。
![1533974662313914.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/4875d49b3d02eb9e.png)
##配置静态路由
设置和查看路由表都可以用route命令。
1)route 命令用法
- add : 添加一条路由规则
- del : 删除一条路由规则
- net : 目的地址是一个网络
- host : 目的地址是一个主机
- target : 目的网络或主机
- netmask : 目的地址的网络掩码
- gw : 路由数据包通过的网关
2)示例说明
*添加到主机的路由
![1533975421463455.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/e414604a3ead4e1d.png)
*添加到网络的路由
![1533975527849038.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/24f42df316361f49.png)
*添加默认路由
![1533975844998152.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/22b624ae1a8139a4.png)
*删除路由
![1533976238585555.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/015e0480b325fdae.png)
![1533976420251240.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/f1b904c6458e92d2.png)
3)设置包转发
在centos中默认的内核配置已经包含了路由功能,单默认并没有在系统启动时启用此功能,想要开启路由功能可以通过调整内核的网络参数来实现,要配置和调整内核参数可以使用sysctl命令,将“net.ipv4.ip_forward = 0”改为“1”即可。操作如下,
![1533976731264944.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/9b43e46a2c48d551.png)
并输入“sysctl -p”命令运行
![1533976941519306.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/eb80d0c35fc984f8.png)
##实例演示
*要求:cp1(IP地址 1.1.1.1),cp2(IP地址 2.2.2.2), 配置5个网络,让两个pc机,穿越5个路由可以实现互通
1)规划设计,制图说明思路
![1533977844450587.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/2b321f80837e2e3c.png)
2)利用vmware克隆命令创建cp1,cp2及3个路由route1,route2,route3,并设置网卡,内存及编辑网络编辑器。
3)分别设置cp1,cp2的IP。
*修改网卡名、修改IP(写入文件,保存设置),并添加路由。
![1533979329170105.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/086d8a03fce001d6.png)
![1533979564595553.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/56091eac170be36b.png)
![1533979795847911.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/8b055d05478edd7a.png)
![1533988536214830.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/5626e00ed7251ce8.png)
*设置3个路由route1,route2,route3的网卡名,IP名
![1533989223374744.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/8ca45739e710cd0d.png)
![1533989266485654.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/62348abc94137c21.png)
![1533989353353124.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/103fab84c95c73dd.png)
*用sysctl命令设置3个路由route1,route2,route3的包转发,并用“iptables -F”命令关闭防火墙。
![1533989631864333.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/e335bbeb10b7dcd7.png)
![1533989660747932.png 技术分享图片](https://img7.php1.cn/3cdc5/c6c6/711/f3a1cad4a623a4cb.png)
好的,这样我们就可以使“cp1”(IP 1.1.1.1)通过三个路由连接到“cp2”(IP 4.4.4.4)上。