美文网首页
Linux 迭代路由

Linux 迭代路由

作者: 苏苏林 | 来源:发表于2021-06-16 11:57 被阅读0次

    Linux 的迭代路由的支持不像传统路由器那么好,用法比较特别。
    如果这么配置,会提示网络不可达。

    #ip addr
    1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    25: veth1@if26: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
        link/ether ba:85:f9:09:2e:e8 brd ff:ff:ff:ff:ff:ff link-netnsid 0
        inet 1.1.1.1/24 scope global veth1
           valid_lft forever preferred_lft forever
        inet6 fe80::b885:f9ff:fe09:2ee8/64 scope link
           valid_lft forever preferred_lft forever
    
    #ip route
    1.1.1.0/24 dev veth1 proto kernel scope link src 1.1.1.1
    2.2.2.2 via 1.1.1.254 dev veth1
    
    #ip route add 3.3.3.3 via 2.2.2.2
    RTNETLINK answers: Network is unreachable
    

    但如果这么配置,就没问题了。我配置了一个默认路由和一个网段路由(3.1.1.0/24),他们的nexthop都不是直连下一跳。然后为nexthop再配置路由。
    主要的点是在配置下一跳的路由的时候,不指定下一跳,直接指定出接口。

    #ip addr
    1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    25: veth1@if26: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
        link/ether ba:85:f9:09:2e:e8 brd ff:ff:ff:ff:ff:ff link-netnsid 0
        inet 7.1.1.2/32 scope global veth1
           valid_lft forever preferred_lft forever
        inet6 fe80::b885:f9ff:fe09:2ee8/64 scope link
           valid_lft forever preferred_lft forever
    
    #ip route
    default via 11.1.1.1 dev veth1
    2.1.1.0/24 dev veth1 scope link
    3.1.1.0/24 via 2.1.1.1 dev veth1
    11.1.1.1 dev veth1 scope link
    

    容器网络calico 就是这么做的。

    相关文章

      网友评论

          本文标题:Linux 迭代路由

          本文链接:https://www.haomeiwen.com/subject/fqvxyltx.html