问题标签 [ospf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
network-programming - 实现ospf拓扑收集器
我需要实现一个能够检索自治系统拓扑的软件模块。查看 Cisco 路由器中实现的各种协议,我得出结论,获得拓扑的唯一两种选择是 smnp 和 ospf。第一个是一种解决方法,我不想使用它,这会导致 ospf。我还没有找到可用的 c、java 和 python 库;这个(http://www.ospf.org/) 可能是最完整的,但没有文档,我没有足够的时间来分析所有代码。所以我找到了可以实现软件ospf路由器的quagga;似乎是完美的选择,因为它可以与 gns3 中的真实网络和模拟网络一起使用。但是有可能从 quagga 获取 ospf 路由表,因为一切都来自命令行?这是我的结论和疑问,如果有人可以提出更好的建议或帮助我进行下一步,我将不胜感激,因为我现在被困住了。
ospf - 在 OSPF 中必须有任何路由器最终属于一个区域
在 OSPF v2 中,我们可以将自治系统划分为区域。但是在标准文件rfc2328(http://www.potaroo.net/ietf/rfc/rfc2328.txt)中,并没有说明每个路由器是否必须属于区域。没想到,但是在rfc2328的page29中,可以看到这个图:
并且文件说 thiat RT5 和 RT7 是 AS 边界路由器,RT5 是内部路由器,RT7 是区域边界路由器。但问题是我看不到这两个路由器所属的任何区域。
networking - OSPF 在 Exstart 状态下停止 - 端口通道
2个节点使用端口通道连接。最初,OSPF 设置在两个节点中。当我关闭并且没有关闭端口通道接口时,第一个节点中的 OSPF 卡在 EXSTART 状态。在第 2 个节点中,OSPF 处于 FULL 状态,因为它在死时间间隔内开始接收来自第 1 个节点的 hello 数据包。在调试时,我了解到,第一个节点在 ExStart 状态下发送数据库描述数据包(DDP)。但是第二个节点没有收到那个数据库描述包。他们曾提到,在某些站点中,MTU 大小可能会有所不同。但就我而言,MTU 也是一样的。那么其他的原因是什么呢?为什么在第二个节点没有收到 DDP。?
提前致谢...
routing - OSPF - 为什么只有两级层次结构?
为什么 OSPF 仅限于单骨干多区域结构?(两级结构)?
我为什么要问?- 在某些情况下,根据 AS 或 OSPF 区域大小,将层次结构进一步向下移动到 3 级或 4 级是有意义的。如果您当前要处理一个巨大的 OSPF 区域,您可能会将一个区域分成两个区域,让骨干网处理其余的区域,这会增加骨干网数据库的大小。因此,创建第三层层次结构(区域内的子区域)可能是有意义的。
请注意!- 我对 OSPF 没有经验。我所有的知识都是基于在大学学习和在谷歌上阅读文章。
欢迎任何关于该主题的想法!干杯,拉斯
routing - Omnet++ OSPF 路由表度量
问题1:我在Omnet++中实现了ospf协议。根据拓扑,r1可以通过两种不同的方式到达r3。我已经将upper path metric设置为1,将lower path设置为10。但是,根据OSPF协议,它不应该选择lower path,但它总是在选择下部路径然后返回上部路径。从路由表中可以看出,度量值存在问题。
问题 2: 我需要在控制台查看路由表。我使用 printRoutingTable() 方法打印它,但它不起作用。
问题 3:如何查看 linkstate 数据库表以了解整个拓扑?
在这里你可以看到代码
ospfRouting.ned
配置文件
RASConfig.xml
ospfR.ini
IP4路由表.cc
python - 从网络 LSA Pyshark 获取链路状态 ID
我正在尝试从 Wireshark 中捕获的 OSPF LS 更新中检索网络 LSA 的链路状态 ID。Wireshark 说变量是 ospf.lsa_id,但是这只给出了 ospf.lsa_id 的第一个实例,它位于数据包的 router-lsa 部分中。如何专门访问 Network-LSA 的 LSID?
我曾尝试使用数组访问和 Wireshark 文档,但其中一些变量被单个 _ 或 .
这是我要访问的屏幕截图:
从测试来看,似乎 ospf.lsa_id 返回了它的第一个实例(这是有道理的),但我希望能够获得所有的 LSID。
我可能最终会循环遍历,因为 lsa_id 似乎是一个列表。
谢谢,
python - 如何在python3.5中使用原始数据包嗅探windows10中的ospf数据包
我正在尝试在 Python 中嗅探 ospf 数据包,并在 ubuntu 中实现了这一目标。
在windows上只能嗅探TCP、UDP和IGMP数据包。我可以通过wireshark捕获ospf数据包。
代码如下。
在 ubuntu 16.04 中,我如下创建套接字。
sniffer = socket(PF_PACKET,SOCK_RAW,htons(0x0800))
但似乎 PF_PACKET 和 AF_PACKET 在 Windows 中不受支持。
如何在 Windows 中修改我的代码?或者如何在 Windows 中捕获以太网帧?
提前致谢 :)
python - 如何知道我是从哪个接口收到多播数据包的?
我有一个套接字在我机器的不同接口上等待 OSPF Hello 数据包(224.0.0.5),环回接口除外。此时,我从同一个套接字上的两个不同接口接收到多播 OSPF 数据包。
现在的重点是我需要知道我在哪个接口收到了数据包,因为数据包的处理方式不同。
如何知道我是从哪个接口收到多播数据包的?
编辑:从获取接收 recvfrom() UDP 数据包(Microsoft)的接口的 IP 此处“当单个侦听套接字绑定到多个 IP 时,无法知道接收 IP。(...)创建一个单独的每个 IP 的侦听套接字。” 有谁知道不同的解决方案?
ns2 - 在 ns2 ospf 中,“mt”在大多数代码中是什么意思
在ns2中ospf的原始代码中,' mt
'是什么意思?这是否意味着路径中的任何中间节点?或表示多拓扑,即包含所有中间节点。
例如:在 ospf.cc
ospf - 我应该在核心交换机还是边缘交换机上启用 OSPF?
在核心交换机上启用 OSPF 有什么缺点吗?我们有远程办公室连接回总部,只是想知道我应该使用边缘交换机或核心交换机上的 OSPF 连接到分支机构