【route】route add命令详解

news2024/11/17 1:04:25

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可以设置一些默认路由

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

跳房子(弱化版)

题目描述 跳房子,也叫跳飞机,是一种世界性的儿童游戏,也是中国民间传统的体育游戏之一。 跳房子的游戏规则如下: 在地面上确定一个起点,然后在起点右侧画 n 个格子,这些格子都在同一条直线上。每个格子内…

A029-基于Spring Boot的物流管理系统的设计与实现

🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 赠送计算机毕业设计600…

Spring系统框架

Spring Framework系统架构 1.Spring核心概念 代码书写现状 耦合度偏高 解决方案 使用对象时,在程序中不要主动使用new产生对象,转换为外部提供对象 IOC(Inversion of Control)控制反转 对象的创建控制权由程序移到外部,这种思想称为控制…

鸿蒙实战:页面跳转

文章目录 1. 实战概述2. 实现步骤2.1 创建项目2.2 准备图片素材2.3 编写首页代码2.4 创建第二个页面 3. 测试效果4. 实战总结 1. 实战概述 实战概述:本实战通过ArkUI框架,在鸿蒙系统上开发了一个简单的两页面应用。首页显示问候语和“下一页”按钮&…

文献解读-DNAscope: High accuracy small variant calling using machine learning

关键词:基准与方法研究;基因测序;变异检测; 文献简介 标题(英文):DNAscope: High accuracy small variant calling using machine learning标题(中文):DNAsc…

程序设计方法与实践-变治法

变换之美 变治法就是基于变换的思路,进而使原问题的求解变得简单的一种技术。 变治法一般有三种类型: 实例化简:将问题变换为同问题,但换成更为简单、更易求解的实例。改变表现:变化为同实例的不同形式,…

解决Anaconda出现CondaHTTPError: HTTP 000 CONNECTION FAILED for url

解决Anaconda出现CondaHTTPError: HTTP 000 CONNECTION FAILED for url 第一类情况 在anaconda创建新环境时,使用如下代码 conda create -n charts python3.7 错误原因: 默认镜像源访问速度过慢,会导致超时从而导致更新和下载失败。 解决方…

Spring Boot框架:电商系统的技术革新

4 系统设计 网上商城系统的设计方案比如功能框架的设计,比如数据库的设计的好坏也就决定了该系统在开发层面是否高效,以及在系统维护层面是否容易维护和升级,因为在系统实现阶段是需要考虑用户的所有需求,要是在设计阶段没有经过全…

wordpress下载站主题推荐riproV5 wordpress日主题

iPro主题全新V5版本,是一个优秀且功能强大、易于管理、现代化的WordPress虚拟资源商城主题。支持首页模块化布局和WP原生小工具模块化首页可拖拽设置,让您的网站设计体验更加舒适。同时支持了高级筛选、自带会员生态系统、超全支付接口等众多功能&#x…

微服务即时通讯系统的实现(客户端)----(1)

目录 1. 项目整体介绍1.1 项目概况1.2 界面预览和功能介绍1.3 技术重点和服务器架构 2. 项目环境搭建2.1 安装Qt62.3 安装vcpkg2.3 安装protobuf2.4 构建项目2.5 配置CMake属性 3. 项目核心数据结构的实现3.1 创建data.h存放核心的类3.2 工具函数的实现3.3 创建编译开关 4. 界面…

2024年11月15日

1.计算机网络 逻辑右移 做加减法 定点乘法 原码乘法运算 一位乘 计组 2.英语六级

算法定制LiteAIServer摄像机实时接入分析平台玩手机打电话检测算法:智能监控的新篇章

在现代社会,随着智能手机的普及,无论是在工作场所还是公共场所,玩手机或打电话的行为日益普遍。然而,在某些特定环境下,如工厂生产线、仓库、学校课堂等,这些行为可能会影响到工作效率、安全或教学秩序。为…

算法--解决二叉树遍历问题

第一 实现树的结构 class Node(): # 构造函数,初始化节点对象,包含数据和左右子节点 def __init__(self, dataNone): self.data data # 节点存储的数据 self.left None # 左子节点,默认为None self.rig…

深度学习基础—Beam search集束搜索

引言 深度学习基础—Seq2Seq模型https://blog.csdn.net/sniper_fandc/article/details/143781223?fromshareblogdetail&sharetypeblogdetail&sharerId143781223&sharereferPC&sharesourcesniper_fandc&sharefromfrom_link 上篇博客讲到,贪心算…

C++__day1

1、思维导图 2、如果登录失败&#xff0c;提示用户登录失败信息&#xff0c;并且提示错误几次&#xff0c;且重新输入&#xff1b;如果输入错误三次&#xff0c;则退出系统 #include <iostream> using namespace std;int main() {string id , pswd;string user"admi…

【机器学习】数学知识:欧式距离(Euclidean Distance)和曼哈顿距离(Manhattan Distance)

欧式距离和曼哈顿距离是两种常用的距离度量方法&#xff0c;用于衡量两点之间的相似性或差异性。它们在几何分析、数据挖掘、机器学习等领域有广泛应用。 1. 欧式距离 概念 欧式距离&#xff08;Euclidean Distance&#xff09;是最常见的直线距离度量方法&#xff0c;源于欧…

Java之JDBC,Maven,MYBatis

前言 就是用来操作数据库的 1.JDBC快速入门 注意在使用前一定要导入jar包 在模块那里新建目录&#xff0c;新建lib&#xff0c;粘贴复制jar包&#xff0c;我这个jar设置的是模块有效 package test1017;import java.sql.Connection; import java.sql.DriverManager; import…

JavaWeb笔记整理——Spring Task、WebSocket

目录 SpringTask ​cron表达式 WebSocket SpringTask cron表达式 WebSocket

【大数据学习 | HBASE高级】rowkey的设计,hbase的预分区和压缩

1. rowkey的设计 ​ RowKey可以是任意字符串&#xff0c;最大长度64KB&#xff0c;实际应用中一般为10~100bytes&#xff0c;字典顺序排序&#xff0c;rowkey的设计至关重要&#xff0c;会影响region分布&#xff0c;如果rowkey设计不合理还会出现region写热点等一系列问题。 …

如何实现主备租户的无缝切换 | OceanBase应用实践

对于DBA而言&#xff0c;确保数据库的高可用性、容灾等能力是其日常工作中需要持续思考和关注的重要事项。一方面&#xff0c;可以利用数据库自身所具备的功能来实现这些目标&#xff1b;若数据库本身不提供相应功能&#xff0c;DBA则需寻找其他工具来增强数据库的高可用性和容…