【route】route add命令详解

route add命令的主要作用是添加静态路由,通常的格式是:
route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
参数含义:^destination ^mask ^gateway metric^ ^interface

destination【网段地址】
mask【子网掩码】
gateway【网关地址】
metric 【路由跳数】
if【端口号】
一般情况下,不涉及本机地址,除非你要做测试。

其中:
可以省略【路由跳数】参数;
当通往该网关地址的路径唯一时,【端口号】参数可以省略。(因为在多端口的路由交换设备上,可能存在通往同一个IP地址的多条备份路径。)
mask 是关键字,不能省略。

route add 134.105.0.0 mask 255.255.0.0 134.105.64.1
意思是:所有需要发往134.105.0.0/16地址段的IP数据包,全部由134.105.64.1路径转发。

这个命令在大型IP网络组建时经常用到,在不同厂商的设备上命令格式可能不同,但原理是一样的。

如果有多条路由,根据不同的路由协议(比如rip, ospf等)的规定,一般优先选择网段地址小的路由。比如,当以下两条路由同时被添加的时候:
route add 134.105.0.0 mask 255.255.0.0 134.105.64.1
route add 134.105.128.0 mask 255.255.128.0 134.105.0.1
目标地址是134.105.128.1的IP包会优先选择第二条路由。
***************************************************

! /bin/bash
sudo route add -net 192.168.2.0 netmask 255.255.255.0 gw 172.24.16.1 metric 5
多网卡
不久前,我单位通过光纤专用线路,以局域网方式接入了Internet。由于没有采用路由器,因此内部网络用户对Internet和内部城域网的所有访问均通过代理服务器完成,采用完全代理方式。在代理服务器上安装了三块网卡,两块网卡采用公网IP地址,接入Internet和城域网;另
一块网卡则采用私有IP地址,通过代理服务器实现内部网与Internet、城域网的连接。

网络基本情况
根据不同的使用需要,将不同部门、不同机房划分为若干子网,使用不同网段的私有IP地址。因此,网络中存在不同网段的信息包经过代理服务器的路由问题。
其中代理服务器对内部网卡的IP是192.168.4.9,连接城域网的网卡IP是10.99.2.2,连接Internet的网卡IP是211.167.148.150。另外机房也使用了代理,两块网卡的IP分别是192.168.4.96和192.168.0.1。
问题一
192.168.4.0这一网段的子网能正常访问外部网络,网段为192.168.0.0的机房能访问校园网,却不能连接外部网络。通过ping命令检查,能ping通192.168.4.1等主机,但是在ping代理服务器(192.168.4.9)时,得到“Request timed out”的反应,看来是192.168.4.9这台主机的回应包未能被正确地路由到192.168.0.0网段。
首先将对内网卡设置默认网关192.168.4.96,这样设置以后,虽然机房的计算机能访问外部网络,但是速度很慢。同时,以前能正常访问外部网络的192.168.4.0网段,访问速度也变得出奇的慢。员工们也开始埋怨,这是什么宽带,比家里拨号的速度还要慢!

看来这种方法是不可行的。通过Route print命令,观察代理服务器的路由,有这么一条:
Network Destination Netmask Gateway 0.0.0.0 0.0.0.0 192.168.4.96 Interface Metric 192.168.4.96
通过分析我们可以知道,关键是上面那条路由有问题,它的目标地址是0.0.0.0,所以所有的回应包被送到了网关192.168.4.96。而我们的要求是192.168.0.0网段的回应包发到192.168.4.96,其他的就直接发到对应的主机。这时笔者想到,如果将上面路由中的目标地址改为192.168.0.0,是不是可以实现这一目的呢?
路由配置方法
通过查找相关资料,笔者发现只要把机房与当前代理服务器所在的网关地址做一下路由即可。当前的内网划分了两个VLAN,服务器所在VLAN的网关是192.168.4.9,机房网关接入内网网卡IP是192.168.4.96。需要运行的命令是:
route -p delete 0.0.0.0 mask 0.0.0.0 192.168.4.96 route -p add 192.168.0.0 mask 255.255.255.0 192.168.4.96
经过调试,将机房内部网卡的网关设置为192.168.0.1,至此,以前出现的网速慢的问题得到解决。
问题二
后来想想,其实这个问题也是一直存在的,只不过由于以前一直被网速慢的问题困扰,所以没有注意到。网络总是出现停顿,而QQ的使用却很正常。
比较了使用两块网卡和三块网卡工作时的路由情况,发现其实这个问题和上面的问题是类似的,都是因为网关的设置造成数据包路由信息发生混乱,通过禁用城域网网卡虽然解决了经常断网的问题,但是不能访问城域网,所以决定修改路由:
route -p delete 0.0.0.0 mask 0.0.0.0 10.99.2.1
经过这次实践,发现内部网卡的网络属性不能设置网关和DNS服务器,不然会造成数据包路由信息发生混乱。通过修改路由,采用三网卡代理时出现的网络问题得到解决。用Route命令手工修改路由简单实用,希望能够对广大中小企业用户有所启示。
route命令主要用于手动配置静态路由表
例:增加一条通过网关到达令一子网的路由

route add net remote_net_ip gateway_ip 1
  其中add代表要增加路由,net表示路由到达的是一个网络而不是一台主机,1代表远端网络需通过网关才能到达
(直接通过网络接口相连时,该参数用0)
命令格式:

route add -net remote_net_ip gateway_ip -netmask netmask
route add -host host_ip local_interface_ip -interface
使用"delete","change"命令参数可以对路由表中的路由信息进行删除和修改
使用"netstat -rn"命令查看当前的路由信息
如果静态路由表配置错误的话,不管你的网卡参数在怎么设置的准确无误也一样无法连接网络
利用命令 netstat -r 或 route print 可以查看本机路由表(图1,2)
Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.78 20
第一个0.0.0.0表示目标IP
第二个0.0.0.0表示子掩码
192.168.1.1是本机网关
192.168.1.78是本机IP
那个20表示度量值
这个路由条目就表示本机对所有网段的访问都通过192.168.1.1这个网关
如果我们想定义路由条目的话(同时也想整下别人的话)
route delete 0.0.0.0 //首先对目标IP 0.0.0.0(也就表示所有网段)访问时指向的网关进行删除
route add 0.0.0.0 mask 0.0.0.0 192.168.1.254
//建立一组新的路由条目,重新建立对目标IP 0.0.0.0(也就表示所有网段)访问时指向的网关,注意这里的网关必须和本机IP同一个网段,比如我的本机IP是192.168.1.78,那么这里的网关就必须是192.168.1.X,不然回提示出错(图3),但是本次建立的路由条目会在下次重起时自动消失还原,如果想永久建立的话需要加上一个 -p 参数
其实 route 的最大魅力就在于可以跨网段访问,比如你所在在的网络存在两个网络,外网(192.168.1.1)内网(10.0.0.1)
本机IP可以设置很多个,在TCP/IP属性里点高级添加(图4),但是默认的网关只能有一个,所以要想外网内网一起访问我们只能借助于route命令,由于默认的是访问外网的路由条目,所以我们只需要对10.0.0.0网段访问指向的网关进行永久建立
route add 10.0.0.0 mask 255.0.0.0 10.0.0.1 -p
转载:route命令详解
屏蔽IP地址
通常情况下,使用防火墙来阻断因特网交通是最好的办法。但是,低端防火墙,比如Internet Connection Firewall并不能过滤单个IP地址。有一个过滤单个IP地址的办法是调整电脑上的路由表。路由命令行工具可以解决这个问题。这是一个较难使用的工具。不懂路由知识而贸然调整可能会导致电脑与网络失去连接。下面这样的命令可以阻断与IP地址为220.189.126.2的通信:
route –p add 220.189.126.2 MASK 255.255.255.255 192.168.1.0 METRIC 1 IF 2
需要根据你的计算机调整接口号码,目的地IP应改为本地网络上以前不存在的一个地址。
Route命令详解
在本地 IP 路由表中显示和修改条目。
语法
route [-f] [-p] [Command [Destination] [mask Net mask] [Gateway] [metric Metric]] [if Interface]]
参数
-f:
清除所有不是主路由(子网掩码为 255.255.255.255 的路由)、环回网络路由(目标为 127.0.0.0,网掩码为 255.255.255.0 的路由)或多播路由(目标为 224.0.0.0,网掩码为 240.0.0.0 的路由)的条目的路由表。如果它与命令之一(例如 add、change 或 delete)结合使用,表会在运行命令之前清除。
-p:
与 add 命令共同使用时,指定路由被添加到注册表并在启动 TCP/IP 协议的时候初始化 IP 路由表。默认情况下,启动 TCP/IP 协议时不会保存添加的路由。与 print 命令一起使用时,则显示永久路由列表。所有其它的命令都忽略此参数。永久路由存储在注册表中的位置是 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes。
下表列出了有效的命令:
Add:添加路由
Change:更改现存路由
Delete:删除路由
Print:打印路由
Destination:指定路由的网络目标地址。目标地址可以是一个 IP 网络地址(其中网络地址的主机地址位设置为 0),对于主机路由是 IP 地址,对于默认路由是 0.0.0.0。mask subnetmask指定与网络目标地址相关联的网掩码(又称之为子网掩码)。对于主机路由是 255.255.255.255 ,对于默认路由是 0.0.0.0。如果忽略,则使用子网掩码 255.255.255.255。定义路由时由于目标地址和子网掩码之间的关系,目标地址不能比它对应的子网掩码更为详细。换句话说,如果子网掩码的一位是 0,则目标地址中的对应位就不能设置为 1。
Gateway:指定过由网络目标和子网掩码定义的可达到的地址集的前一个或下一个跃点 IP 地址。对于本地连接的子网路由,网关地址是分配给连接子网接口的 IP 地址。对于要经过一个或多个路由器才可用到的远程路由,网关地址是一个分配给相邻路由器的、可直接达到的 IP 地址。
Metric:为路由指定所需跃点数的整数值(范围是 1 ~ 9999),它用来在路由表里的多个路由中选择与转发包中的目标地址最为匹配的路由。所选的路由具有最少的跃点数。跃点数能够反映跃点的数量、路径的速度、路径可靠性、路径吞吐量以及管理属性。
if Interface:指定目标可以到达的接口的接口索引。使用 route print 命令可以显示接口及其对应接口索引的列表。对于接口索引可以使用十进制或十六进制的值。对于十六进制值,要在十六进制数的前面加上 0x。忽略 if 参数时,接口由网关地址确定。
路由表中跃点数 一列的值较大是由于允许 TCP/IP 根据每个 LAN接口的 IP 地址、子网掩码和默认网关的配置自动确定路由表中路由的跃点数造成的。默认启动的自动确定接口跃点数确定了每个接口的速度,调整了每个接口的路由跃点数,因此最快接口所创建的路由具有最低的跃点数。要删除大跃点数,请在每个 LAN 连接的 TCP/IP 协议的高级属性中禁用自动确定接口跃点数。
如果是 print 或 delete 命令,可以忽略 Gateway 参数,使用通配符来表示目标和网关。Destination 的值可以是由星号 () 指定的通配符。如果指定目标含有一个星号 () 或问号 (?),它被看作是通配符,只打印或删除匹配的目标路由。星号代表任意一字符序列,问号代表任一字符。例如, 10…1, 192.168.、 127.* 和 224 都是星号通配符的有效使用。
使用了无效的目标和子网掩码(网掩码)值的组合,会显示“Route:bad gateway address netmask”错误消息。目标中有一位或多位设置为 1,而其在子网掩码中的对应位设置为0时会发生这个错误。可以通过二进制表示法表示目标和子网掩码来检查这种情况。以二进制表示的子网掩码包括表示目标网络地址部分的一连串的 1 和表示目标主机地址部分的一连串的 0 两个部分。查看目标以确定目标的主机地址部分(由子网掩码所定义)是否有些位设置成了 1。
只有 Windows NT 4.0、Windows 2000、Windows Millennium Edition 和 Windows XP 的 route 命令支持 -p 参数。Windows 95 或 Windows 98 的 route 命令不支持该参数。
只有当网际协议 (TCP/IP) 协议在 网络连接中安装为网络适配器属性的组件时,该命令才可用。
route命令的常用举例:
要显示 IP 路由表的完整内容,请键入:Route print
要显示 IP 路由表中以 10. 开始的路由,请键入:Route print 10.*
要添加默认网关地址为 192.168.12.1 的默认路由,请键入:
route add 0.0.0.0 mask 0.0.0.0 192.168.12.1
要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1 的路由,请键入:
route add 10.41.0.0 mask 255.255.0.0 10.27.0.1
要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1 的永久路由,请键入:
route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1
要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1,跃点数为 7 的路由,请键入:route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7
要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1,接口索引为 0x3 的路由,请键入:route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3
要删除目标为 10.41.0.0,子网掩码为 255.255.0.0 的路由,请键入:
route delete 10.41.0.0 mask 255.255.0.0
要删除 IP 路由表中以 10. 开始的所有路由,请键入:Route delete 10.*
要将目标为 10.41.0.0,子网掩码为 255.255.0.0 的路由的下一个跃点地址由 10.27.0.1 更改为 10.27.0.25,请键入:Route change 10.41.0.0 mask 255.255.0.0 10.27.0.25
过修改文件/etc/defaultrouter可以设置一些默认路由

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/917382.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

设计模式之责任链模式(Chain Of Responsibility)

一、责任链模式介绍 1、责任链模式介绍 职责链模式(chain of responsibility pattern) 定义: 避免将一个请求的发送者与接收者耦合在 一起,让多个对象都有机会处理请求。将接收请求的对象连接成一条链,并且沿着这条链 传递请求,直到有一个对…

游戏引擎学习第12天

视频参考:https://www.bilibili.com/video/BV1yom9YnEWY 这节没讲什么东西,主要是改了一下音频的代码 后面有介绍一些alloc 和malloc,VirtualAlloc 的东西 _alloca 函数(或 alloca)分配的是栈内存,它的特点是: 生命周…

更改liunx的磁盘名称

目录 1. 问题的提出 2. 机器环境说明 3. 解决方法 1. 问题的提出 今天在Linux上部署软件,发现要部署软件的硬盘名称带中文,当访问该磁盘时,中文则被转为长长的一串数字字符串,这很不方便,于是需要将带有中文的磁盘名…

基于Python 和 pyecharts 制作招聘数据可视化分析大屏

在本教程中,我们将展示如何使用 Python 和 pyecharts 库,通过对招聘数据的分析,制作一个交互式的招聘数据分析大屏。此大屏将通过不同类型的图表(如柱状图、饼图、词云图等)展示招聘行业、职位要求、薪资分布等信息。 …

论文PDF页面无法下载PDF

问题:通常在下载学术论文时,网页命名是PDF页面,但是无法下载PDF,下载的是html网页 解决: mac:按F12打开开发者界面 然后点击源代码/来源选项 然后打开下图所在位置,鼠标右键复制链接&#xff…

Ubuntu24 上安装搜狗输入法

link 首先在终端中依次输入以下代码 sudo apt update sudo apt install fcitx 找到语言支持 在终端中依次输入 sudo cp /usr/share/applications/fcitx.desktop /etc/xdg/autostart/ sudo apt purge ibus 进入网页 搜狗输入法linux-首页​ shurufa.sogou.com/linux 找到刚才下…

从0开始机器学习--Day27--主成分分析方法

主成分分析方法(Principal components analysis) 在降维算法中,比较普遍的是使用主成分分析方法(PCA) PCA算法简单示例 如图,假设我们有一个二维的特征,想要将其降为一维,简单的方法是寻找一条直线&#…

深度学习中的mAP

在深度学习中,mAP是指平均精度均值(mean Average Precision),它是深度学习中评价模型好坏的一种指标(metric),特别是在目标检测中。 精确率和召回率的概念: (1).精确率(Precision):预测阳性结果中实际正确的比例(TP / …

【实验11】卷积神经网络(2)-基于LeNet实现手写体数字识别

👉🏼目录👈🏼 🍒1. 数据 1.1 准备数据 1.2 数据预处理 🍒2. 模型构建 2.1 模型测试 2.2 测试网络运算速度 2.3 输出模型参数量 2.4 输出模型计算量 🍒3. 模型训练 🍒4.模…

Springboot3.3.5 启动流程之 tomcat启动流程介绍

在文章 Springboot3.3.5 启动流程(源码分析) 中讲到 应用上下文(applicationContext)刷新(refresh)时使用模板方法 onRefresh 创建了 Web Server. 本文将详细介绍 ServletWebServer — Embedded tomcat 的启动流程。 首先&…

学习日志011--模块,迭代器与生成器,正则表达式

一、python模块 在之前学习c语言时,我们学了分文件编辑,那么在python中是否存在类似的编写方式?答案是肯定的。python中同样可以实现分文件编辑。甚至还有更多的好处: ‌提高代码的可维护性‌:当代码被分成多个文件时…

【提高篇】3.3 GPIO(三,工作模式详解 上)

目录 一,工作模式介绍 二,输入浮空 2.1 输入浮空简介 2.2 输入浮空特点 2.3 按键检测示例 2.4 高阻态 三,输入上拉 3.1 输入上拉简介 3.2 输入上拉的特点 3.3 按键检测示例 四,输入下拉 4.1 输入下拉简介 4.2 输入下拉特点 4.3 按键检测示例 一,工作模式介绍…

Excel单元格中自适应填充多图

实例需求:在Excel插入图片时,由于图片尺寸各不相同,如果希望多个图片填充指定单元格,依靠用户手工调整,不仅费时费力,而且很难实现完全填充。如下图中的产品图册,有三个图片,如下图所…

@Autowired 和 @Resource思考(注入redisTemplate时发现一些奇怪的现象)

1. 前置知识 Configuration public class RedisConfig {Beanpublic RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {RedisTemplate<String, Object> template new RedisTemplate<>();template.setConnectionFactory(facto…

从零开始学习 sg200x 多核开发之 milkv-duo256 编译运行 sophpi

sophpi 是 算能官方针对 sg200x 系列的 SDK 仓库 https://github.com/sophgo/sophpi &#xff0c;支持 cv180x、cv81x、sg200x 系列的芯片。 SG2002 简介 SG2002 是面向边缘智能监控 IP 摄像机、智能猫眼门锁、可视门铃、居家智能等多项产品领域而推出的高性能、低功耗芯片&a…

防火墙----iptables

防火墙是位于内部网和外部网之间的屏障&#xff0c;他按照系统管理员预先定义好的规则来控制数据包的进出 一、iptables简介 防火墙会从以上至下的顺序来读取配置的策略规则&#xff0c;在找到匹配项后就立即结束匹配工作并去执行匹配项中定义的行为&#xff08;即放行或阻止&…

【CSS】absolute定位的默认位置

position: absolute; 属性会使元素脱离正常的文档流&#xff0c;并相对于最近的非 static 定位祖先元素进行定位。如果没有这样的祖先元素&#xff0c;则相对于初始包含块&#xff08;通常是视口&#xff09;进行定位。 但是当top和left没有指定具体值时&#xff0c;元素的在上…

(一)机器学习、深度学习基本概念简介

文章目录 机器学习、深度学习基本概念简介一、什么是机器学习&#xff08;一&#xff09;举例&#xff08;二&#xff09;不同类型的函数&#xff08;三&#xff09;机器是怎么找这个函数的&#xff08;1&#xff09;Function with Unknown Parameters&#xff08;2&#xff09…

CentOS8 启动错误,enter emergency mode ,开机直接进入紧急救援模式,报错 Failed to mount /home 解决方法

先看现场问题截图&#xff1a; 1.根据提示 按 ctrld 输入 root 密码&#xff0c;进入系统。 2. 在紧急模式下运行&#xff1a;journalctl -xe &#xff0c;查看相关日志&#xff0c;找到关键点&#xff1a; Failed to mount /home 3.接着执行修复命令&#xff1a; xfs_repa…

mysql 大数据查询

基于 mysql 8.0 基础介绍 com.mysql.cj.protocol.ResultsetRows该接口表示的是应用层如何访问 db 返回回来的结果集 它有三个实现类 ResultsetRowsStatic 默认实现。连接 db 的 url 没有增加额外的参数、单纯就是 ip port schema 。 @Test public void generalQuery() t…