无线上外网有线上内网

http://www.blogjava.net/amigoxie/archive/2010/06/12/323467.html

出差常备:route命令详解与使用实例

记录人:谢星星

日期:2010-6-12

1.  使用背景

笔者在出差调试的过程中,常常会遇到这样的情况:需要接入两个网络,一个是部署环境所在内网环境,这个环境是上不了外网,但是为了跟同事的沟通,常常还需要外网环境,这个外网环境很可能是一个无线网络。如果两者都连接上,很可能导致有一方不能起作用,即外网或内网上不了,常常需要使用繁琐的“禁用网络连接”、“启用网络连接”的操作来进行内外网的切换,甚是麻烦。

为了解决这个问题,我们可以使用route命令来使得同时内外网都可用。

2.  route命令

route命令是在本地 IP路由表中显示和修改条目网络命令。

route命令的语法如下:

route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]]

route命令常用的命令如下:

1route delete:删除路由;

2route print:打印路由的Destination

3route add:添加路由;

4route change:更改现存路由。

一般使用route deleteroute addroute print这三条命令可解决路由的所有功能。

2.1 打印路由信息

       打印路由信息使用命令route print

       例如笔者在工作环境下打印route print命令,结果如下:

C:"Documents and Settings"阿蜜果>route print
===========================================================================
Interface List
0x1  MS TCP Loopback interface
0x2 00 26 18 31 4f d1  Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether
net NIC 
- 数据包计划程序微型端口
0x50004 00 53 45 00 00 00  WAN (PPP/SLIP) Interface
===========================================================================
===========================================================================

Active Routes:
Network Destination        Netmask          Gateway       Interface Metric
          
0.0.0.0          0.0.0.0   116.69.106.119 116.69.106.119       1
          
0.0.0.0          0.0.0.0    192.168.2.226    192.168.2.79       20
    
115.168.64.94 255.255.255.255   116.69.106.119 116.69.106.119       1
   
116.69.106.119 255.255.255.255        127.0.0.1       127.0.0.1       50
 
116.255.255.255 255.255.255.255   116.69.106.119 116.69.106.119       50
        
127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
      
192.168.2.0    255.255.255.0     192.168.2.79    192.168.2.79       20
     
192.168.2.79 255.255.255.255        127.0.0.1       127.0.0.1       20
    
192.168.2.255 255.255.255.255     192.168.2.79    192.168.2.79       20
        
224.0.0.0        240.0.0.0     192.168.2.79    192.168.2.79       20
        
224.0.0.0        240.0.0.0   116.69.106.119 116.69.106.119       1
 
255.255.255.255 255.255.255.255   116.69.106.119 116.69.106.119       1
 
255.255.255.255 255.255.255.255     192.168.2.79    192.168.2.79       1

Default Gateway:    
116.69.106.119
===========================================================================
Persistent Routes:
 None

    第一列是网络目的地址。列出了路由器连接的所有的网段。

第二行网络掩码列提供这个网段本身的子网掩码,而不是连接到这个网段的网卡的子网掩码。这基本上能够让路由器确定目的网络的地址类。

第三列是网关。一旦路由器确定它要把这个数据包转发到哪一个目的网络,路由器就要查看网关列表。网关表告诉路由器这个数据包应该转发到哪一个IP地址才能达到目的网络。

第四列接口列告诉路由器哪一个网卡连接到了合适的目的网络。从技术上说,接口列仅告诉路由器分配给网卡的IP地址。那个网卡把路由器连接到目的网络。然而,路由器很聪明,知道这个地址绑定到哪一个物理网卡。

第五列是测量。测量本身是一种科学。该值越小的可信度越高

下面说说每一行内容代表的内容

Network Destination      Netmask          Gateway         Interface      Metric  
0.0.0.0                    0.0.0.0          116.69.106.119  116.69.106.119      1  

   这表示发向任意网段的数据通过本机接口116.69.106.119被送往一个默认的网关116.69.106.119它的管理距离是1管理距离指的是在路径选择的过程中信息的可信度管理距离越小的可信度越高。

第二行的内容:

Network Destination      Netmask          Gateway         Interface      Metric  
0.0.0.0                    0.0.0.0          192.168.2.226  192.168.2.79      20

   这表示发向任意网段的数据通过本机接口192.168.2.79被送往网关192.168.2.226,但是因为该行的管理距离(Metric)比第一行大,即表示第二行的可信度没有第一行高,所以在默认情况下会优先选择第一行的网关出去。

       第三行的内容:

Network Destination      Netmask          Gateway         Interface          Metric  
115.168.64.94           255.255.255.255    116.69.106.119 116.69.106.119       1

    第四行的内容:

Network Destination      Netmask          Gateway         Interface          Metric  
116.69.106.119          255.255.255.255    127.0.0.1        127.0.0.1             50

      表示从自己的主机发送到自己主机的数据包,如果使用的是自己主机的IP地址,跟使用回环地址效果相同,通过同样的途径被路由,也就是如果我有自己的站点,我要浏览自己的站点,在IE地质栏里面输入localhost116.69.106.119是一样的,尽管localhost被解析为 127.0.0.1 

       第五行的内容:

Network Destination      Netmask          Gateway         Interface          Metric  
116.255.255.255          255.255.255.255    116.69.106.119 116.69.106.119       50

   这里的目的地址是一个局域广播地址,系统对这样的数据包的处理方法是把本机116..69.106.119作为网关,发送局域广播帧,这个帧将被路由器过滤。 

       第六行的内容:

Network Destination      Netmask          Gateway         Interface          Metric  
127.0.0.0                   255.0.0.0          127.0.0.1       127.0.0.1           1

2.2 删除路由信息

       所用的命令为:

route delete 网络目的地址 [mask] [子网掩码]

   例如想要删除网络目的地址为192.168.2.0子网掩码为255.255.255.0的路由,可用:

route delete 192.168.2.0 mask 255.255.0.0

    删除路由时还可以用模糊匹配,例如要删除以115开头的IP路由表中的所有路由时,可用:

route delete 115*

2.3 添加路由信息

       添加路由信息使用如下命令:

route add 网络目的地址 mask 子网掩码网关 [metric] [测量值]

   例如若要向带有255.255.0.0子网掩码、10.27.0.1网关,测量值为710.41.0.0的目标地址添加一条路由,可使用如下命令:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7

3.  应用实例

我近来在上海出差,下面以我调试环境为例,需要接入内网进行调试,笔者的内网地址为5.0.217.47。另外接了个无线,可以上外网自动分配了个192.168.2.110

插上内网网线,并成功连接上外网后,此时内网是通的,但是外网连接不上。在命令窗口使用ipconfigroute print命令可以打印出当前的信息:

C:"Documents and Settings"阿蜜果>route print
===========================================================================
Interface List
0x1  MS TCP Loopback interface
0x2 00 26 18 31 4f d1  Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether
net NIC 
- 数据包计划程序微型端口
0x3 00 24 2c e7 57 11  Atheros AR5006X Wireless Network Adapter - 数据
包计划程序微型端口

===========================================================================
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface Metric
          
0.0.0.0          0.0.0.0        5.0.217.1      5.0.217.47       10
          
0.0.0.0          0.0.0.0      192.168.1.1   192.168.1.110       25
        
5.0.217.0 255.255.255.192       5.0.217.47      5.0.217.47       10
       
5.0.217.47 255.255.255.255        127.0.0.1       127.0.0.1       10
    
5.255.255.255 255.255.255.255       5.0.217.47      5.0.217.47       10
        
127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
      
192.168.1.0    255.255.255.0    192.168.1.110   192.168.1.110       25
    
192.168.1.110 255.255.255.255        127.0.0.1       127.0.0.1       25
    
192.168.1.255 255.255.255.255    192.168.1.110   192.168.1.110       25
        
224.0.0.0        240.0.0.0       5.0.217.47      5.0.217.47       10
        
224.0.0.0        240.0.0.0    192.168.1.110   192.168.1.110       25
 
255.255.255.255 255.255.255.255       5.0.217.47      5.0.217.47       1
 
255.255.255.255 255.255.255.255    192.168.1.110   192.168.1.110       1
Default Gateway:       
192.168.1.1
===========================================================================
Persistent Routes:
 None

C:
"Documents and Settings"阿蜜果>ipconfig
Windows IP Configuration
Ethernet adapter 本地连接:
        Connection
-specific DNS Suffix . :
        IP Address. . . . . . . . . . . . : 
5.0.217.47
        Subnet Mask . . . . . . . . . . . : 
255.255.255.192
        Default Gateway . . . . . . . . . :
Ethernet adapter 无线网络连接:
        Connection
-specific DNS Suffix . :
        IP Address. . . . . . . . . . . . : 
192.168.1.110
        Subnet Mask . . . . . . . . . . . : 
255.255.255.0
        Default Gateway . . . . . . . . . : 
192.168.1.1

route print命令的结果的第一行可以看到,只所以访问不到外网,是因为默认的情况是通过5.0.217.1的内网的网关出去的。

       为了达到能同时访问内外网的需求,只需要删除掉0.0.0.0的路由后,添加两条路由即可,将5开头的地址都通过5.0.217.1网关路由出去,而其余的地址都通过无线的网关192.168.1.110出去。参考如下:

C:"Documents and Settings"阿蜜果>route delete 0.0.0.0
C:
"Documents and Settings"阿蜜果>route add 0.0.0.0 mask 0.0.0.0 192.168.1.1
C:
"Documents and Settings"阿蜜果>route add 5.0.0.0 mask 255.0.0.0 5.0.217.1

此时运行route print命令,可看到运行结果如下:
C:
"Documents and Settings"小海>route print
===========================================================================
Interface List
0x1  MS TCP Loopback interface
0x2 00 26 18 31 4f d1  Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether
net NIC 
- 数据包计划程序微型端口
0x3 00 24 2c e7 57 11  Atheros AR5006X Wireless Network Adapter - 数据
包计划程序微型端口
===========================================================================
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface Metric
          
0.0.0.0          0.0.0.0      192.168.1.1   192.168.1.110       1
          
5.0.0.0        255.0.0.0        5.0.217.1      5.0.217.47       1
        
5.0.217.0 255.255.255.192       5.0.217.47      5.0.217.47       10
       
5.0.217.47 255.255.255.255        127.0.0.1       127.0.0.1       10
    
5.255.255.255 255.255.255.255       5.0.217.47      5.0.217.47       10
        
127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
      
192.168.1.0    255.255.255.0    192.168.1.110   192.168.1.110       25
    
192.168.1.110 255.255.255.255        127.0.0.1       127.0.0.1       25
    
192.168.1.255 255.255.255.255    192.168.1.110   192.168.1.110       25
        
224.0.0.0        240.0.0.0       5.0.217.47      5.0.217.47       10
        
224.0.0.0        240.0.0.0    192.168.1.110   192.168.1.110       25
 
255.255.255.255 255.255.255.255       5.0.217.47      5.0.217.47       1
 
255.255.255.255 255.255.255.255    192.168.1.110   192.168.1.110       1
Default Gateway:       
192.168.1.1
===========================================================================
Persistent Routes:
 None

   可看到默认是通过无线的192.168.1.110出去的,此时内外网都可以同时用了,呵呵。还不错吧?!



<think>好的,用户想知道在银河麒麟系统下如何配置有线无线网络来连接内外网。首先,我需要结合之前的引用内容来整理解决方案。根据引用[1],麒麟KOS可以同时配置WiFi和有线卡,但默认设置可能导致冲突。引用[2]提到在Linux下通过路由表调整优先级来解决类似问题。所以,关键点可能在于路由配置和优先级设置。 首先,用户可能需要分别配置内网外网的接口。内网通常是有线连接,而外网可能是无线。需要确认两个网络接口的IP配置是否正确,比如内网使用静态IP,外网使用DHCP或者另一个静态IP。然后,设置路由规则,确保内网流量通过有线卡,而外网的默认关走无线。引用[2]中的例子就是用route命令调整默认关,这可能适用。 另外,可能需要修改网络管理器的配置,防止自动覆盖手动设置的路由。比如,在NetworkManager中设置有线连接的优先级较低,或者禁用自动路由。此外,防火墙规则也需要检查,确保没有阻止必要的流量。 用户可能遇到的问题包括网络服务冲突、路由表不正确或者网络管理器干扰。需要分步骤指导他们检查接口状态、配置静态IP、设置路由,并测试连通性。最后,提醒他们注意事项,如重启后的配置持久化和备份原有设置。</think>在银河麒麟系统中配置有线无线网络分别连接内网外网,需通过路由优先级调整和网络接口配置实现。以下是具体步骤: ### 一、基础配置步骤 1. **确认网络接口名称** ```bash ip a ``` 有线卡通常为`enpXsX`(如enp3s0),无线卡为`wlpXsX`(如wlp4s0) 2. **配置静态IP(内网场景)** - 有线网络配置文件路径:`/etc/NetworkManager/system-connections/有线连接.nmconnection` - 添加静态IP段(例如内网192.168.1.0/24): ```ini [ipv4] method=manual addresses=192.168.1.100/24 gateway=192.168.1.1 dns=192.168.1.1; ``` 3. **无线网络配置** 通过系统托盘连接WiFi并确保获取外网IP(如DHCP分配的10.0.0.x) ### 二、关键路由配置 1. **查看当前路由表** ```bash route -n ``` 2. **删除冲突默认路由** ```bash sudo ip route del default via 192.168.1.1 dev enp3s0 ``` 3. **设置外网默认路由** ```bash sudo ip route add default via 10.0.0.1 dev wlp4s0 metric 100 ``` 4. **添加内网静态路由** ```bash sudo ip route add 192.168.1.0/24 dev enp3s0 metric 50 ``` ### 三、网络管理器优化 1. **修改连接优先级** ```bash nmcli connection modify "有线连接" ipv4.route-metric 500 nmcli connection modify "WiFi连接" ipv4.route-metric 100 ``` 2. **禁用自动默认路由** 在无线连接配置文件中添加: ```ini [ipv4] never-default=true ``` ### 四、验证与测试 1. **连通性检查** ```bash ping -I enp3s0 192.168.1.1 # 测试内网 ping -I wlp4s0 8.8.8.8 # 测试外网 ``` 2. **路由追踪** ```bash traceroute -i wlp4s0 www.baidu.com ``` ### 五、常见问题解决 1. **网络服务冲突** - 停止冲突服务:`sudo systemctl stop NetworkManager-wait-online.service` - 禁用服务:`sudo systemctl disable NetworkManager-wait-online` 2. **防火墙配置** ```bash sudo ufw allow in on enp3s0 from 192.168.1.0/24 ``` >[!NOTE] >通过调整`metric`值可精细控制路由优先级,数值越小优先级越高[^2]。配置完成后建议执行`sudo netplan apply`使设置生效。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值