龙空技术网

route指令使用详解

散文随风想 347

前言:

当前各位老铁们对“linux系统重启网卡”大体比较讲究,各位老铁们都想要分析一些“linux系统重启网卡”的相关资讯。那么小编也在网摘上网罗了一些对于“linux系统重启网卡””的相关资讯,希望看官们能喜欢,你们一起来了解一下吧!

1、观察路由表信息:

route [-nee]

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

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

2、输出详解

route命令输出的路由表字段含义如下:

Destination 目标网络或目标主机(本机的数据要发送的目的地:子网或主机),与Genmask组成一个网段。

Gateway 网关(如果是默认网关,网关的地址必须和自己的主机上的其中一块网卡在同一子网)即网关地址。如果没有就显示星号。

Genmask 网络掩码,如果目标网络的的子网掩码为255.255.255.255,说明目标是一台主机;如果子网掩码为’0.0.0.0’ 说明该路由是默认路由。

Flags(旗标)

代表的意义如下:

U (route is up):该路由是启动的;

H (target is a host):目标是一部主机 (IP) 而非网段;

G (use gateway):需要透过外部的主机 (gateway) 来转递封包(该行有gw);

R (reinstate route for dynamic routing):使用动态路由时,恢复路由资讯的旗标;

D (dynamically installed by daemon or redirect):已经由服务或转 port 功能设定为动态路由

M (modified from routing daemon or redirect):路由已经被修改;

! (reject route):这个路由将不会被接受(用来抵挡不安全的网域!)

A (installed by addrconf)

C (cache entry)

Metric 距离、跳数。暂无用。与目标的“距离”(通常以跳数计算)。它不被最近的内核使用,但可能需要路由守护进程。

**Ref ** 不用管,恒为0, 对这条路线的引用次数(Linux内核已不再使用)。

Use 该路由被使用的次数,可以粗略估计通向指定网络地址的网络流量。 路线查询次数。根据-F和-C的使用,这将是路由高速缓存丢失(-F)或命中(-C)。

Iface 接口,即eth0,eth1等网络接口名,为此路由发送数据包的接口。

由上面的路由排列顺序,依序是由小网域——逐渐到大网域——最后则是预设路由 (0.0.0.0/0.0.0.0)。当要判断某个网路封包应该如何传送的时候,该封包会经由这个路由的过程来判断喔!

3、添加路由:

route add [-net|-host] [网域或主机] netmask [mask] [gw|dev]

route del [-net|-host] [网域或主机] netmask [mask] [gw|dev]

参数:

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

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

netmask :掩码,决定了网域的大小(配合-net使用,构成一个网段);

gw :gateway 的简写,后续接的是 IP (必须和本机的其中一块网卡处于同一网段),与 dev 不同;

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

注意:

使用route添加的路由在机器重启后失效。

4、删除路由:

格式:

route del -net {NETWORK-ADDRESS} netmask {NETMASK} reject

5、设置默认路由:

格式:

route add default gw {IP-ADDRESS} |** dev {INTERFACE-NAME}**

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

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

注意:

IP-ADDRESS 和 INTERFACE-NAME只能指定其中一个

例:

route add default gw 10.0.0.2

等同于:

route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.0.0.2

在网卡配置文件中进行配置默认路由:

grep GATEWAY /etc/sysconfig/network-scripts/ifcfg-eth0

GATEWAY=10.0.0.25

6、添加到指定网段的路由(即网域路由):

格式:

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

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

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

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

示例:

route add -net 10.0.0.0 netmask 255.255.255.0 dev eth0

7、删除到指定网段的路由(即网域路由):

格式:

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

示例:

route del -net 10.0.0.0 netmask 255.255.255.0 dev eth0

8、设定指定的网段不可到达:

设置到指定网络为不可达,避免在连接到这个网络的地址时程序过长时间的等待,直接就知道该网络不可达。

格式:

route add -net {NETWORK-ADDRESS} netmask {NETMASK} reject

示例:

route add -net 10.0.0.0 netmask 255.0.0.0 reject

9、设置路由永久生效

方法一:

vim /etc/sysconfig/static-routes #默认不存在此文件

加入如下内容:

any net 192.168.1.0/24 gw 192.168.1.1

方法二:

vim /etc/sysconfig/network-scripts/route-eth0 #默认不存在此文件

加入如下内容:

192.168.1.0/24 via 192.168.1.1

以上两种方式,重启网络服务和重启系统都会生效!

方法三:

vim /etc/rc.local

加入如下内容:

route add -net 192.168.1.0/24 gw 192.168.1.1

这种方式重启网络服务将会失效,但重启机器生效

10、设置包转发

在 CentOS中默认的内核配置已经包含了路由功能,但默认并没有在系统启动时启用此功能。

开启Linux的路由功能可以通过调整内核的网络参数来实现。

# sysctl -w net.ipv4.ip_forward=1 #命令行执行

永久生效设置:

echo “net.ipv4.ip_forward=1” /etc/sysctl.conf

sysctl -p #使配置立即生效

11、其它

192.168.1.0网段(源头),192.168.1.1网关(途径)的某一服务器想连入172.16.1.0/24段(目的地),如何添加路由???

route add -net 172.16.1.0 netmask 255.255.255.0 gw 192.168.1.1

在源头主机上执行上述命令设定,数据途径哪台主机,到达目的地网段

gw(途径主机的IP)的设定必须和源头主机IP必须在同一网段!!!

标签: #linux系统重启网卡 #win10命令重启网卡 #linuxnetwork添加路由 #centos配置route