Linux下Route 路由指令使用详解

Linux下Route 路由指令使用详解,第1张

linux route命令 用于显示和 *** 作IP路由表

要实现 两个不同子网之间的通信 ,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。

在Linux系统中,设置路由通常是为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的IP地址 设置为 Linux机器的默认路由

格式:

[root@linux ~]# route [-nee]

[root@linux ~]# route add [-net|-host] [网域或主机] netmask [mask] [gw|dev]

[root@linux ~]# route del [-net|-host] [网域或主机] netmask [mask] [gw|dev]

1、 查看相关参数:

-n :不要使用通讯协定或主机名称,直接使用 IP 或 port number;

-ee :使用更详细的资讯来显示

2、增加 (add) 、删除 (del) 路由的相关参数:

-net :表示后面接的路由为一个网域;

-host :表示后面接的为连接到单部主机的路由;

netmask :与网域有关,可以设定 netmask 决定网域的大小;

gw :gateway 的简写,后续接的是 IP 的数值喔,与 dev 不同;

dev :如果只是要指定由那一块网卡连线出去,则使用这个设定,后面接 eth0 等

设置默认路由

格式:route add default gw {IP-ADDRESS} {INTERFACE-NAME}

其中,

参数{IP-ADDRESS): 用于指定路由器(网关)的IP地址;

参数{INTERFACE-NAME}: 用于指定接口名称,如eth0。使用/sbin/ifconfig -a可以显示所有接口信息。

例:

添加到指定网络的路由规则

格式:route add -net {NETWORK-ADDRESS} netmask {NETMASK} dev {INTERFACE-NAME}

其中

参数{NETWORK-ADDRESS}: 用于指定网络地址

参数{NETMASK}: 用于指定子网掩码

参数{INTERFACE-NAME}: 用于指定接口名称,如eth0。

例:

屏蔽一条路由,设置到指定网络为不可达 ,避免在连接到这个网络的地址时程序过长时间的等待

格式:route add -net {NETWORK-ADDRESS} netmask {NETMASK} reject

例:

删除路由设置 ,参数指定的方式与route add相似。

格式:route del -net {NETWORK-ADDRESS} netmask {NETMASK} dev {INTERFACE-NAME}

格式:route del -net {NETWORK-ADDRESS} netmask {NETMASK} reject

例:

注意的是 ,直接在命令行下执行route命令来添加路由, 不会永久保存 ,当网卡重启或者机器重启之后,该路由就 失效 了; 要想永久保存 ,有如下方法:

1. 在/etc/rc.local里添加

2. 在/etc/sysconfig/network里添加到末尾

3. /etc/sysconfig/static-router :

any net x.x.x.x/24 gw y.y.y.y

windows添加静态路由

Windows 10系统为例:

1. 屏幕左下角“开始”点鼠标右键选择“Windows PowerShell(管理员)”。

2. 在命令行下输入route命令,会有对应的提示信息。

示例:

1. 查看所有的路由信息

route print

2. 添加一条路由条目

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2

3. 添加一条永久路由条目(-p 表示永久路由,重启后不丢失)

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 -p

4. 删除路由条目

route delete 157.0.0.0 MASK 255.0.0.0

5. 修改路由条目(CHANGE 只用于修改网关和/或跃点数)

route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2

linux添加静态路由

linux下添加静态路由的命令(命令行临时添加):

方法一:

添加路由

route add -net 192.168.0.0/24 gw 192.168.0.1

route add -host 192.168.1.1 dev 192.168.0.1

删除路由

route del -net 192.168.0.0/24 gw 192.168.0.1

add 增加路由 del 删除路由

-net 设置到某个网段的路由 gw 出口网关IP地址

-host 设置到某台主机的路由 dev 出口网关物理设备名

增加默认路由:route add default gw 192.168.0.1

route -n 查看路由表

方法二:

添加路由

ip route add 192.168.0.0/24 via 192.168.0.1

ip route add 192.168.1.1 dev 192.168.0.1

删除路由

ip route del 192.168.0.0/24 via 192.168.0.1

add 增加路由 del 删除路由

via 网关出口 IP地址 dev 网关出口物理设备名

增加默认路由

ip route add default via 192.168.0.1 dev eth0

查看路由信息 ip route

在linux下设置永久路由:

方法1:在/etc/rc.local里添加

route add -net 192.168.0.0/24 dev eth0

route add -net 192.168.1.0/24 gw 192.168.2.254

方法2:/etc/sysconfig/static-routes : (没有static-routes的话就手动建立一个

这样的文件)

any net 192.168.0.0/24 gw 192.168.3.254

any net 10.250.228.128 netmask 255.255.255.192 gw 10.250.228.129

开启 IP 转发:

# echo "1" >/proc/sys/net/ipv4/ip_forward (临时)

# vi /etc/sysctl.conf -->net.ipv4.ip_forward=1 (永久开启)

ip rule是linux中用于配置路由的命令(应该说是ip 命令的route选项),相当于

通过路由表 inr.ruhep 路由来自源地址为192.203.80/24的数据包 windows的route命令;

linux对应的用法是:

ip rule add from 192.167.80/24 table inr.ruhep prio 220 

windows 对应的用法是:

route add 192.167.80.0 mask 255.255.255.0

另外,linux还有个命令iptables功能强大得多,可以设置端口转发,以供外部的主机享用路由规则。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7543692.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存