`traceroute` issue: NoneType object has no attribute status
rickdonato opened this issue · comments
Hi, Im hitting an issue when trying to use a traceroute with Batfish. Thanks in advance.
>>> bf.q.traceroute(startLocation='nxos-core1', headers=HeaderConstraints(srcIps='nxos-core1[Ethernet1/2]', dstIps='nxos-core2[Ethernet1/2]'),maxTraces=1).answer().frame()
Flow ... TraceCount
0 start=nxos-core1 [10.1.2.1:49152->10.2.2.1:33434 UDP] ... 2
[1 rows x 3 columns]
>>> bf.cov.result()
Unsupported protocol ospf with prefix 10.2.2.0/24 at nxos-core1.default main rib
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/home/rick/development/tech-sessions/2022-11-netcov/.venv/lib/python3.8/site-packages/netcov/coverage.py", line 64, in result
ifg_lazy_construction(self.model, tested_nodes)
File "/home/rick/development/tech-sessions/2022-11-netcov/.venv/lib/python3.8/site-packages/netcov/algorithm/construct.py", line 451, in ifg_lazy_construction
run_to_fixpoint()
File "/home/rick/development/tech-sessions/2022-11-netcov/.venv/lib/python3.8/site-packages/netcov/algorithm/construct.py", line 420, in run_to_fixpoint
if len(node.status) == 0:
AttributeError: 'NoneType' object has no attribute 'status'
@rickdonato - This looks like some invalid assumption in how NetCov is parsing TR data. It'll help if you can provide a repro - the snapshot used and any relevant setup before you ran the TR query above.
@rickdonato Hi Rick, we figured out that this problem was bacause NetCov's data model didn't implement OSPF routes properly. This should have been fixed now.