# 手动为多网卡Linux云服务器配置IPv4和IPv6策略路由（Debian）
#### 操作场景
本文档以Debian 12.0.0 64bit为例，为指导您为多网卡的云服务器配置策略路由。
- IPv4：若需实现多网卡云服务器间的IPv4通信，需要配置IPv4路由，请执行[Linux IPv4操作步骤 (Debian)]。
- IPv6：若需实现多网卡云服务器间的IPv6通信，需要配置IPv6路由，请执行[Linux IPv6操作步骤 (Debian)]。
- IPv4/IPv6双栈：若需实现多网卡间的IPv4和IPv6通信，需要同时配置IPv4和IPv6路由，请依次执行[Linux IPv4操作步骤 (Debian)]和[Linux IPv6操作步骤 (Debian)]。
关于云服务器双网卡的背景知识及组网说明，请参见[方案概述](https://support.huaweicloud.com/usermanual-vpc/vpc_nic_0014.html#vpc_nic_0014)。
 #### Linux IPv4操作步骤 (Debian)
1. 收集配置策略路由需要的云服务器网卡地址等信息。
   具体操作请参见[收集云服务器网络信息](https://support.huaweicloud.com/usermanual-vpc/vpc_nic_0015.html#vpc_nic_0015)。
   本示例中，云服务器的网络信息如[表1]所示。
    表1Linux IPv4信息说明（Debian） 
   | 类型   | 主网卡                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 扩展网卡                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   |:---|:---|:---|
   | 源端  | - 网卡IPv4地址：10.0.0.138  - 子网IPv4网段：10.0.0.0/24  - 子网IPv4网关：10.0.0.1   | - 网卡IPv4地址：10.0.1.29  - 子网IPv4网段：10.0.1.0/24  - 子网IPv4网关：10.0.1.1   |
   | 目的端 | 网卡IPv4地址：10.0.2.179                                                                                                                                                                                                                                                                                                                                                                                                                                  | 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                        |
      
   
2. 登录源端云服务器。 ECS有多种登录方法，具体请参见[登录弹性云服务器](https://support.huaweicloud.com/ecs_faq/ecs_faq_0632.html)。
   
3. 执行以下命令，检查源端云服务器主网卡和目的端云服务器通信情况。 **配置多网卡策略路由前，请务必确保源端主网卡和目的端通信正常。**
   **ping -I** *源端云服务器主网卡地址* *目的端云服务器地址*
   命令示例：
   **ping -I 10.0.0.138 10.0.2.179**
   回显类似如下信息，表示可以正常通信。
   ```
   root@ecs-s:~# ping -I 10.0.0.138 10.0.2.179
   PING 10.0.2.179 (10.0.2.179) from 10.0.0.138 : 56(84) bytes of data.
   64 bytes from 10.0.2.179: icmp_seq=1 ttl=64 time=0.220 ms
   64 bytes from 10.0.2.179: icmp_seq=2 ttl=64 time=0.166 ms 
   64 bytes from 10.0.2.179: icmp_seq=3 ttl=64 time=0.127 ms
   ^C
   -- 10.0.2.179 ping statistics ---
   3 packets transmitted, 3 received, 0% packet loss, time 2043ms
   rtt min/avg/max/mdev = 0.127/0.171/0.220/0.038 ms
   ```
   
4. 执行以下命令，查看云服务器网卡名称。
   **ip addr**
   回显类似如下信息，通过网卡地址查找对应的网卡名称，本示例中：
   - 10.0.0.138为主网卡地址，对应的名称为eth0。
   
   - 10.0.1.29为扩展网卡地址，对应的名称为eth1。
   
   
   ```
   root@ecs-s:~# ip addr
   ...
   2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 gdisc mq state UP group default qlen 1000
       link/ether fa:16:3e:30:30:ba brd ff:ff:ff:ff:ff:ff
       inet 10.0.0.138/24 brd 10.0.0.255 scope global dynamic noprefixroute eth0
          valid_lft 315359713sec preferred_lft 315359713sec
       inet6 fe80::c624:9977:1f61:cf54/64 scope link noprefixroute
          valid_lft forever preferred_lft forever
   3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 gdisc mq State UP group default qlen 1000
       link/ether fa:16:3e:30:31:4d brd ff:ff:ff:ff:ff:ff
       inet 10.0.1.29/24 brd 10.0.1.255 scope global dynamic noprefixroute eth1
          valid_lft 315359713sec preferred_lft 315359713sec
       inet6 fe80::eda5:599b:e006:d2d3/64 scope link noprefixroute
          valid_lft forever preferred_lft forever
   ```
   
5. 执行以下步骤，为云服务器配置临时路由。
   ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/caution_3.0-zh-cn.png)
   临时路由配置完后立即生效，当云服务器重启后临时路由会丢失，请执行[5]配置完临时路由后，继续执行[6]配置永久路由，避免云服务器重启后网络中断。
   1. 依次执行以下命令，添加主网卡和扩展网卡的策略路由。
      - 主网卡 **ip route add default via** *子网网关* **dev** *网卡名称* **table** *路由表名称*
        **ip route add** *子网网段* **dev** *网卡名称* **table** *路由表名称*
        **ip rule add from** *网卡地址* **table** *路由表名称*
        
      
      - 扩展网卡 **ip route add default via** *子网网关* **dev** *网卡名称* **table** *路由表名称*
        **ip route add** *子网网段* **dev** *网卡名称* **table** *路由表名称*
        **ip rule add from** *网卡地址* **table** *路由表名称*
        
      
      
      参数说明如下：
      - 网卡名称：填写[4]中所查名称。
      
      - 路由表名称：自定义路由表名称，此处请使用数字命名路由表。
      
      - 其他网络信息：填写[1]中收集的地址。
       
      命令示例：
      - 主网卡 **ip route add default via 10.0.0.1 dev eth0 table 10**
        **ip route add 10.0.0.0/24 dev eth0 table 10**
        **ip rule add from 10.0.0.138 table 10**
        
      
      - 扩展网卡 **ip route add default via 10.0.1.1 dev eth1 table 20**
        **ip route add 10.0.1.0/24 dev eth1 table 20**
        **ip rule add from 10.0.1.29 table 20**
        
      
      
      ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/note_3.0-zh-cn.png)
      如果云服务器有多张网卡，请依次为所有网卡添加策略路由。
      
   
   2. 依次执行以下命令，确认策略路由是否添加成功。
      **ip rule**
      **ip route show table** *主网卡路由表名称*
      **ip route show table** *扩展网卡路由表名称*
      其中，路由表名称为[5.a]中自定义的名称。
      命令示例：
      **ip rule**
      **ip route show table 10**
      **ip route show table 20**
      回显类似如下信息，表示策略路由添加成功。
      ```
      root@ecs-s:~# ip rule
      0：       from all lookup local
      32764:    from 10.0.1.29 lookup 20
      32765:    from 10.0.0.138 lookup 10
      32766:    from all lookup main
      32767:    from all lookup default
      root@ecs-s:~# ip route show table 10
      default via 10.0.0.1 dev eth0
      10.0.0.0/24 dev eth0 scope link
      root@ecs-s:~# ip route show table 20
      default via 10.0.1.1 dev eth1
      10.0.1.0/24 dev eth1 scope link
      ```
      
   
   3. 执行以下命令，验证源端云服务器和目的端云服务器是否可以正常通信。
      **ping -I** *源端云服务器主网卡地址 目的端云服务器地址*
      **ping -I** *源端云服务器扩展网卡地址 目的端云服务器地址*
      命令示例：
      **ping -I 10.0.0.138 10.0.2.179**
      **ping -I 10.0.1.29 10.0.2.179**
      回显类似如下信息，两个网卡均可以和目的端正常通信，表示策略路由配置成功。
      ```
      root@ecs-s:~# ping -I 10.0.0.138 10.0.2.179
      PING 10.0.2.179 (10.0.2.179) from 10.0.0.138 : 56(84) bytes of data.
      64 bytes from 10.0.2.179: icmp_seq=1 ttl=64 time=0.182 ms
      64 bytes from 10.0.2.179: icmp_seq=2 ttl=64 time=0.156 ms
      64 bytes from 10.0.2.179: icmp_seq=3 ttl=64 time=0.118 ms
      ^C
      --- 10.0.2.179 ping statistics --
      3 packets transmitted, 3 received, 0% packet loss, time 2046ms
      rtt min/avg/max/mdev = 0.118/0.152/0.182/0.026 ms
      root@ecs-s:~# ping -I 10.0.1.29 10.0.2.179
      PING 10.0.2.179 (10.0.2.179) from 10.0.1.29 : 56(84) bytes of data.
      64 bytes from 10.0.2.179: icmp_seq=1 ttl=64 time=1.13 ms
      64 bytes from 10.0.2.179: icmp_seq=2 ttl=64 time=0.177 ms
      64 bytes from 10.0.2.179: icmp_seq=3 ttl=64 time=0.123 ms
      ^C
      --- 10.0.2.179 ping statistics --
      3 packets transmitted, 3 received, 0% packet loss, time 2022ms
      rtt min/avg/max/mdev = 0.123/0.476/1.130/0.462 ms
      ```
      
    
6. 执行以下步骤，为云服务器配置永久路由。
   1. 执行以下命令，为systemd服务创建一个新的"network-routes.service"文件。 **vi /etc/systemd/system/network-routes.service**
      
   
   2. 按i进入编辑模式。
   
   3. 在文件末尾添加以下配置。
      ```
      [Unit]
      Description=Network Routes Configuration
      After=network.target
      [Service]
      Type=oneshot
      RemainAfterExit=yes
      ExecStart=/bin/bash -c 'for((x=0; x<10; x++)); do [[ $(ip addr show eth0 | grep -w 10.0.0.138 >/dev/null 2>&1 && echo 1) ]] && break; sleep 1; done; ip route flush table 10; ip route add default via  10.0.0.1 dev eth0 table 10; ip route add 10.0.0.0/24 dev eth0 table 10; ip rule add from 10.0.0.138 table 10; for((x=0; x<10; x++)); do [[ $(ip addr show eth1 | grep -w 10.0.1.29 >/dev/null 2>&1 && echo 1) ]] && break; sleep 1; done; ip route flush table 20; ip route add default via 10.0.1.1 dev eth1 table 20; ip route add 10.0.1.0/24 dev eth1 table 20; ip rule add from 10.0.1.29 table 20; ip rule add to 169.254.169.254 table main'
      [Install]
      WantedBy=multi-user.target
      ```
      其中，参数说明如下：
      - for循环：循环检查主网卡eth0或者扩展网卡eth1是否获取到IPv4地址（eth0网卡地址为10.0.0.138，eth1网卡地址为10.0.1.29），每秒检查一次，重试次数为10次。
      
      - ip route flush table 路由表名称：假如路由表有残留路由，使用该命令会清空指定路由表中残留的路由，避免影响本次配置新的路由。
      
      - 主网卡的策略路由，和[5.a]配置保持一致。
      
      - 扩展网卡的策略路由，和[5.a]配置保持一致。
      
      - ip rule add to 169.254.169.254 table main：配置cloud-init地址，请和本示例中的配置保持一致，不要修改。
       
   
   4. 按ESC退出，并输入:wq!保存配置。
   
   5. 执行以下命令，重新加载systemd配置，并启动服务。 **systemctl daemon-reload**
      **systemctl enable network-routes.service**
      回显类似如下信息，表示启动成功。
      ```
      root@ecs-s:~# systemctl daemon-reload 
      root@ecs-s:~# systemctl enable network-routes.service
      Created symlink /etc/systemd/system/multi-user.target.wants/network-routes.service → /etc/systemd/system/network-routes.service.
      ```
      
   
   6. 执行以下命令，重启云服务器。 reboot
      ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/caution_3.0-zh-cn.png)
      "network-routes.service"文件中添加的策略路由，需要重启云服务器后才会生效，此处请确保不影响业务再重启云服务器操作。
      
   
   7. 参考[5.b]\~[5.c]，检查策略路由添加情况，并验证源端和目的通信是否正常。
    
 
 #### Linux IPv6操作步骤 (Debian)
1. 收集配置策略路由需要的云服务器网卡地址等信息。
   具体操作请参见[收集云服务器网络信息](https://support.huaweicloud.com/usermanual-vpc/vpc_nic_0015.html#vpc_nic_0015)。
   本示例中，云服务器的网络信息如[表2]所示。
    表2Linux IPv6信息说明（Debian） 
   | 类型 | 主网卡                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 扩展网卡                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   |:---|:---|:---|
   | 源端   | - 网卡IPv4地址：10.0.0.138  - 网卡IPv6地址：2407:c080:1880:9ba:57d9:40d3:f968:81bb  - 子网IPv6网段：2407:c080:1880:9ba::/64  - 子网IPv6网关：2407:c080:1880:9ba::1   | - 网卡IPv4地址：10.0.1.29  - 网卡IPv6地址：2407:c080:1880:9bb:70e0:4aa8:f6c3:5504  - 子网IPv6网段：2407:c080:1880:9bb::/64  - 子网IPv6网关：2407:c080:1880:9bb::1   |
   | 目的端   | - 网卡IPv4地址：10.0.2.179  - 网卡IPv6地址：2407:c080:1880:9bc:2fba:3a48:9262:2483                                                                                                                                                                                                                                                                                                                       | 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
      
   
2. 登录源端云服务器。 ECS有多种登录方法，具体请参见[登录弹性云服务器](https://support.huaweicloud.com/ecs_faq/ecs_faq_0632.html)。
   
3. 执行以下步骤，确保云服务器已开启IPv6协议栈，并且正常获取到IPv6地址。
   ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/caution_3.0-zh-cn.png)
   对于源端和目的端的IPv6云服务器，均需要执行该操作，确保云服务器已获取到IPv6地址，否则云服务器无法通过IPv6地址进行通信。
   本章节云服务器使用的操作系统为Debian 12.0.0 64bit公共镜像，以下针对该操作系统举例，更多操作系统配置指导，请参见[动态获取IPv6地址](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0508.html#ecs_03_0508__zh-cn_topic_0129883696_section7426172116710)的"Linux操作系统（手动配置启用IPv6）" 小节。
   1. 执行以下命令，检查云服务器是否可以获取到IPv6地址。 ip addr
      回显类似如下信息，eth0和eth1为云服务器的网卡，有一行inet6地址，为fe80开头，表示该云服务器已开启IPv6协议栈。同时有一行2407开头的地址，表示已可以自动获取到IPv6地址。**因此本示例的** **镜像无需额外配置。**
      ```
      root@ecs-s:~# ip addr
      ...
      2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisC mq state UP group default qlen 1000
          link/ether fa:16:3e:30:30:ba brd ff:ff:ff:ff:ff:ff
          altname enpos3
          altname ens3
          inet 10.0.0.138/24 brd 10.0.0.255 scope global dynamic noprefixroute eth0
             valid_lft 315359957sec preferred_lft 315359957sec
          inet6 2407:c080:1880:9ba:57d9:40d3:f968:81bb/128 scope global dynamic noprefixroute
             valid_lft 7158sec preferred_lft 7158sec
          inet6 fe80::19ba:54cd:a7f6:615e/64 scope link noprefixroute
             valid_lft forever preferred_lft forever
      3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 gdisc mq state UP group default qlen 1000
          link/ether fa:16:3e:30:31:4d brd ff:ff:ff:ff:ff:ff
          altname enp4s4
          inet 10.0.1.29/24 brd 10.0.1.255 scope global dynamic noprefixroute eth1
             valid_lft 315359957sec preferred_lft 315359957sec
          inet6 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504/128 scope global dynamic noprefixroute
             valid_lft 7158sec preferred_lft 7158sec
          inet6 fe80::9dd7:9fd6:611d:9f43/64 scope link noprefixroute
             valid_lft forever preferred_lft forever
      ```
      
   
   2. 通过上一步的回显，通过网卡地址查找记录对应的网卡名称。
      本示例中，网卡名称如下：
      - 10.0.0.138为主网卡地址，对应的名称为eth0。
      
      - 10.0.1.29为扩展网卡地址，对应的名称为eth1。
        
    
4. 登录源端云服务器，执行以下命令，检查源端云服务器和目的端云服务器通信情况。 **配置多网卡策略路由前，请务必确保：源端的主网卡与扩展网卡中，至少有一个网卡可以和目的端正常通信。**
   **ping6 -I** *源端云服务器某个网卡地址* *目的端云服务器地址*
   命令示例：
   **ping6 -I 2407:c080:1880:9ba:57d9:40d3:f968:81bb 2407:c080:1880:9bc:2fba:3a48:9262:2483**
   回显类似如下信息，表示可以正常通信。
   ```
   root@ecs-s:~# ping6 -I 2407:c080:1880:9ba:57d9:40d3:f968:81bb 2407:c080:1880:9bc:2fba:3a48:9262:2483
   PING 2407:c080:1880:9bc:2fba:3a48:9262:2483(2407:c080:1880:9bc:2fba:3a48:9262:2483) from 2407:c080:1880:9ba:57d9:40d3:f968:81bb : 56databytes
   64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=1 ttl=64 time=0.512 ms
   64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=2 ttl=64 time=0.478 ms
   64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=3 ttl=64 time=0.461 ms
   ^C
   -- 2407:c080:1880:9bc:2fba:3a48:9262:2483 ping statistics ---
   3 packets transmitted，3 received，0% packet loss, time 2039ms
   rtt min/avg/max/mdev = 0.461/0.483/0.512/0.021 ms
   ```
   
5. 登录源端云服务器，执行以下步骤，为云服务器配置临时路由。
   ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/caution_3.0-zh-cn.png)
   临时路由配置完后立即生效，当云服务器重启后临时路由会丢失，请执行[5]配置完临时路由后，继续执行[6]配置永久路由，避免云服务器重启后网络中断。
   1. 依次执行以下命令，添加主网卡和扩展网卡的策略路由。
      - 主网卡 **ip -6 route add default via** *子网网关* **dev** *网卡名称* **table** *路由表名称*
        **ip -6 route add** *子网网段* **dev** *网卡名称* **table** *路由表名称*
        **ip -6 rule add from** *网卡地址* **table** *路由表名称*
        
      
      - 扩展网卡 **ip -6 route add default via** *子网网关* **dev** *网卡名称* **table** *路由表名称*
        **ip -6 route add** *子网网段* **dev** *网卡名称* **table** *路由表名称*
        **ip -6 rule add from** *网卡地址* **table** *路由表名称*
        
      
      
      参数说明如下：
      - 网卡名称：填写[3.b]中所查名称。
      
      - 路由表名称：自定义路由表名称，此处请使用数字命名路由表。
      
      - 其他网络信息：填写[1]中收集的地址。
       
      命令示例：
      - 主网卡 **ip -6 route add default via 2407:c080:1880:9ba::1 dev eth0 table 10**
        **ip -6 route add 2407:c080:1880:9ba::/64 dev eth0 table 10**
        **ip -6 rule add from 2407:c080:1880:9ba:57d9:40d3:f968:81bb table 10**
        
      
      - 扩展网卡 **ip -6 route add default via 2407:c080:1880:9bb::1 dev eth1 table 20**
        **ip -6 route add 2407:c080:1880:9bb::/64 dev eth1 table 20**
        **ip -6 rule add from 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504 table 20**
        
      
      
      ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/note_3.0-zh-cn.png)
      如果云服务器有多张网卡，请依次为所有网卡添加策略路由。
      
   
   2. 依次执行以下命令，确认策略路由是否添加成功。
      **ip -6 rule**
      **ip -6 route show table** *主网卡路由表名称*
      **ip -6 route show table** *扩展网卡路由表名称*
      其中，路由表名称为[5.a]中自定义的名称。
      命令示例：
      ip -6 rule
      ip -6 route show table 10
      ip -6 route show table 20
      回显类似如下信息，表示策略路由添加成功。
      ```
      root@ecs-s:~# ip -6 rule
      0:      from all lookup local
      32764:  from 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504 lookup 20
      32765:  from 2407:c080:1880:9ba:57d9:40d3:f968:81bb lookup 10
      32766:  from all lookup main
      root@ecs-s:~# ip -6 route show table 10
      2407:c080:1880:9ba::/64 dev eth0 metric 1024 pref medium
      default via 2407:c080:1880:9ba::1 dev eth0 metric 1024 pref medium
      root@ecs-s:~# ip -6 route show table 20
      2407:c080:1880:9bb::/64 dev eth1 metric 1024 pref medium
      default via 2407:c080:1880:9bb::1 dev eth1 metric 1024 pref medium
      ```
      
   
   3. 执行以下命令，验证源端云服务器和目的端云服务器是否可以正常通信。
      **ping6 -I** *源端云服务器主网卡地址 目的端云服务器地址*
      **ping6 -I** *源端云服务器扩展网卡地址 目的端云服务器地址*
      命令示例：
      **ping6 -I 2407:c080:1880:9ba:57d9:40d3:f968:81bb 2407:c080:1880:9bc:2fba:3a48:9262:2483**
      **ping6 -I 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504 2407:c080:1880:9bc:2fba:3a48:9262:2483**
      回显类似如下信息，两个网卡均可以和目的端正常通信，表示策略路由配置成功。
      ```
      root@ecs-s:~# ping6 -I 2407:c080:1880:9ba:57d9:40d3:f968:81bb 2407:c080:1880:9bc:2fba:3a48:9262:2483
      PING 2407:c080:1880:9bc:2fba:3a48:9262:2483(2407:c080:1880:9bc:2fba:3a48:9262:2483) from 2407:c080:1880:9ba:57d9:40d3:f968:81bb : 56 data bytes
      64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=1 ttl=64 time=0.451 ms
      64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=2 ttl=64 time=0.385 ms
      64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=3 ttl=64 time=0.352 ms
      ^C
      --- 2407:c080:1880:9bc:2fba:3a48:9262:2483 ping statistics ---
      3 packets transmitted, 3 received, 0% packet loss, time 2035ms 
      rtt min/avg/max/mdev = 0.352/0.396/0.451/0.041 ms
      root@ecs-s:~# ping6 -I 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504 2407:c080:1880:9bc:2fba:3a48:9262:2483
      PING 2407:c080:1880:9bc:2fba:3a48:9262:2483(2407:c080:1880:9bc:2fba:3a48:9262:2483) from 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504 : 56 data bytes
      64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=1 ttl=64 time=0.418 ms
      64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=2 ttl=64 time=0.370 ms
      64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=3 ttl=64 time=0.347 ms
      64 bytes from 2407:c080:1880:9bc:2fba:3a48:9262:2483: icmp_seq=4 ttl=64 time=0.357 ms
      ^C
      -- 2407:c080:1880:9bc:2fba:3a48:9262:2483 ping statistics_---
      4 packets transmitted, 4 received, 0% packet loss, time 3072ms 
      rtt min/avg/max/mdev = 0.347/0.373/0.418/0.027 ms
      ```
      
    
6. 执行以下步骤，为云服务器配置永久路由。
   1. 执行以下命令，为systemd服务创建一个新的文件"network-routes6.service"。 **vi /etc/systemd/system/network-routes6.service**
      
   
   2. 按i进入编辑模式。
   
   3. 在文件末尾添加以下配置。
      ```
      [Unit]
      Description=Network Routes Configuration
      After=network.target
      [Service]
      Type=oneshot
      RemainAfterExit=yes
      ExecStart=/bin/bash -c 'for((x=0; x<10; x++)); do [[ $(ip addr show eth0 | grep -w 2407:c080:1880:9ba:57d9:40d3:f968:81bb >/dev/null 2>&1 && echo 1) ]] && break; sleep 1; done; ip route flush table 10; ip -6 route add default via 2407:c080:1880:9ba::1 dev eth0 table 10; ip -6 route add 2407:c080:1880:9ba::/64 dev eth0 table 10; ip -6 rule add from 2407:c080:1880:9ba:57d9:40d3:f968:81bb table 10; for((x=0; x<10; x++)); do [[ $(ip addr show eth1 | grep -w 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504 >/dev/null 2>&1 && echo 1) ]] && break; sleep 1; done; ip route flush table 20; ip -6 route add default via 2407:c080:1880:9bb::1 dev eth1 table 20; ip -6 route add 2407:c080:1880:9bb::/64 dev eth1 table 20; ip -6 rule add from 2407:c080:1880:9bb:70e0:4aa8:f6c3:5504 table 20'
      [Install]
      WantedBy=multi-user.target
      ```
      其中，参数说明如下：
      - for循环：检查主网卡eth0或者扩展网卡eth1是否获取到IPv6地址（eth0网卡IPv6地址为2407:c080:1880:9ba:57d9:40d3:f968:81bb，eth1网卡IPv6地址为2407:c080:1880:9bb:70e0:4aa8:f6c3:5504），间隔时间为1s，重试次数为10次。
      
      - ip route flush table 路由表名称：假如路由表有残留路由，使用该命令会清空指定路由表中残留的路由，避免影响本次配置新的路由。
      
      - 主网卡的策略路由，和[5.a]配置保持一致。
      
      - 扩展网卡的策略路由，和[5.a]配置保持一致。
       
   
   4. 按ESC退出，并输入:wq!保存配置。
   
   5. 执行以下命令，重新加载systemd配置，并启动服务。 **systemctl daemon-reload**
      **systemctl enable network-routes6.service**
      回显类似如下信息，表示启动成功。
      ```
      root@ecs-s:/etc/netplan# systemctl daemon-reload
      root@ecs-s:/etc/netplan# systemctl enable network-routes6.service
      Created symlink /etc/systemd/system/multi-user.target.wants/network-routes6.service → /etc/systemd/system/network-routes6.service.
      ```
      
   
   6. 执行以下命令，重启云服务器。 reboot
      ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/caution_3.0-zh-cn.png)
      "network-routes6.service"文件中添加的策略路由，需要重启云服务器后才会生效，此处请确保不影响业务再重启云服务器操作。
      
   
   7. 参考[5.b]\~[5.c]，检查策略路由添加情况，并验证源端和目的通信是否正常。
    
 
