AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 471262
Accepted
Andy Shinn
Andy Shinn
Asked: 2013-01-22 20:30:03 +0800 CST2013-01-22 20:30:03 +0800 CST 2013-01-22 20:30:03 +0800 CST

Quagga 路由器的 Juniper OSPF 子网不匹配

  • 772

我正在尝试在 Juniper MX80 和 Quagga 路由器之间设置一个 OSPF 区域。Quagga 路由器配置了 OSPF,并在 hello 数据包中通告了网络 199.192.100.0/28。但 Juniper MX80 拒绝它并出现以下错误:

1 月 22 日 04:14:38.371296 OSPF 数据包被忽略:intf ae0.0 区域 0.0.0.0 上来自 199.192.100.2 的子网不匹配
Jan 22 04:14:38.371515 OSPF rcvd Hello 199.192.100.2 -> 224.0.0.5 (ae0.0 IFL 336 area 0.0.0.0)
Jan 22 04:14:38.371538 版本 2,长度 44,ID 10.10.90.4,区域 0.0.0.0
1 月 22 日 04:14:38.371559 校验和 0x0,authtype 0
Jan 22 04:14:38.371581 mask 255.255.255.240, hello_ivl 10, opts 0x2, prio 1
1 月 22 日 04:14:38.371602 dead_ivl 40,DR 199.192.100.2,BDR 0.0.0.0

配置的相关部分是:

瞻博网络 MX80:

ashinn@mx2# 显示接口 ae0
聚合以太选项{
    拉普{
        积极的;
    }
}
单元 0 {
    家庭互联网{
        地址 199.192.100.253/30;
    }
}

ashinn@mx2# 显示协议 ospf   
导出重新分配连接;
面积 0.0.0.0 {
    区域范围 199.192.100.0/28;
    接口 xe-0/0/1.0;
    界面 ae0.0 {
        接口型p2p;
    }
}

Interface ae0.0是面向Quagga路由器bond0接口的接口:

!
接口绑定0
 ip ospf 成本 50
 ipv6 nd 抑制-ra
!
路由器 ospf
 日志邻接更改
 重新分配内核
 重新分配连接
 网络 199.192.100.0/28 区域 0.0.0.0
 邻居 199.192.100.253
!

以及 bond0 的 Quagga 接口:

[ashinn@lb2 ~]$ ip addr show dev bond0
8: bond0: mtu 1500 qdisc noqueue 状态 UP
    链接/以太 00:25:90:27:8a:be brd ff:ff:ff:ff:ff:ff
    inet 199.192.100.254/30 brd 199.192.100.255 范围 global bond0
    inet 199.192.100.2/28 范围 global bond0
    inet6 fe80::225:90ff:fe27:8abe/64 作用域链接
       valid_lft 永远 preferred_lft 永远

我试过在没有neighbor statementQuagga 的情况下也试过ip ospf network point-to-point在 Quagga 中设置。两者似乎都没有任何区别。

我发现这篇文章http://kb.juniper.net/InfoCenter/index?page=content&id=KB23533&cat=T1600_1&actp=LIST&showDraft=false似乎解释了同样的问题。但它只建议纠正子网掩码不匹配。这种不匹配可能在哪里?如果它与 /30 点对点接口子网冲突,那么为什么?

juniper
  • 3 3 个回答
  • 2705 Views

3 个回答

  • Voted
  1. Best Answer
    Sebastian Wiesinger
    2013-04-06T12:16:23+08:002013-04-06T12:16:23+08:00

    问题是您在 Quagga 的 OSPF 中配置了错误的子网。您需要 /30 as network 语句:

    network 199.192.100.252/30 area 0.0.0.0

    network 语句告诉 Quagga 在哪个接口上启用 OSPF。具有来自该子网的 IP 的每个接口都将启用 OSPF。

    同样,199.192.100.2/28 可能不应该在那个 bond0 设备上。尝试将其放在 lo 接口上并告诉该接口是被动接口。

    像这样:

    !
    interface bond0
     ip ospf cost 50
     ipv6 nd suppress-ra
    !
    router ospf
     log-adjacency-changes
     redistribute kernel
     redistribute connected
     network 199.192.100.252/30 area 0.0.0.0
     network 199.192.100.0/28 area 0.0.0.0
     passive-interface lo
     neighbor 199.192.100.253
    !
    

    另外我建议将 MX80 和 Quagga 之间的 OSPF 接口模式设置为点对点。这将加快收敛时间。

    • 1
  2. lunistorvalds
    2013-02-12T02:49:32+08:002013-02-12T02:49:32+08:00

    OSPF 邻居部分尝试形成邻接的 /30 范围落在为 OSPF 启用的 /28 范围之外......这是子网掩码不匹配的来源。调试输出告诉您修复它需要知道的一切。 OSPF rcvd Hello应该匹配另一边。如果掩码不匹配,则永远不会形成邻接关系。

    如果 MX80 + Quagga 路由器之间有不同的连接,或者至少在这三个路由器之间有一个专用于 OSPF 的网段,你会好得多(尽管在这种情况下,你需要interface-type p2p关闭,因为你需要一个 DR选举。您首先遇到此问题的原因是 Quagga 试图与来自错误子网/配置 IP 的 Hello 数据包建立 OSPF 邻接关系。

    如果没有完整的配置,很难知道还有什么问题,但我会非常小心,考虑到当前的配置,以及那些重新分发命令会发生什么;)

    • 0
  3. Kelly McDowell
    2013-05-03T08:00:31+08:002013-05-03T08:00:31+08:00

    我知道这有点晚了,但为了澄清,OSPF 必须匹配几件事才能形成邻居关系。这些包括区域号、接口类型(点对点或广播)问候计时器、死计时器和正在形成邻居的接口的子网掩码。MX 正在寻找与本地 MX 接口位于完全相同子网掩码上的邻居。

    • 0

相关问题

  • 瞻博网络 SSG5 防火墙

  • 无法进入瞻博网络 Netscreen Web 界面

  • 瞻博网络防火墙 - 用于测试的大型 ping

  • 我可以在瞻博网络 M10i 路由器中使用第三方 Compact Flash 吗?

  • SSRS 导出到 Excel 无法通过 VPN (Juniper SA4000)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve