Comments (10)
Here's an extract from the xml db (ip/asn changed - they're correct in the database)
<router id="3"> <justAnnouncedAPrefix>false</justAnnouncedAPrefix> <justWithdrawnAPrefix>false</justWithdrawnAPrefix> <latitude>0.0</latitude> <location>Somewhere...</location> <longitude>0.0</longitude> <name>Unknown</name> <routerId> <areaId>0</areaId> <autonomousSystem>123456</autonomousSystem> <identifier>1.2.3.4</identifier> <lsIdentifier>0</lsIdentifier> </routerId> <virtual>false</virtual> <x>0</x> <y>0</y> </router>
from blt.
OK Guillaume,
SNMP kicks in as soon as there is a matching IP between the community subnet declared in administration menu and an IP address active on your router, learnt via BGP LS.
Is that ok ?
from blt.
No actually there's actually no ip addresses shown on the device, only the router-id is shown.
I'll try to do a pcap dump of some of the updates.
from blt.
OK, if the RID is routable and reachable, you can use it for SNMP.
Otherwise you have to use an alternate IP, announced through BGP LS.
At least, SNMP is not a strict prerequisite if you use ISIS as an IGP since we use is-name TLVs to gather names from BGP LS.
from blt.
SO I have a proper dump, but I can't post it publicly here, tell me how I can send it to you.
Here's an example of an update (obfuscated):
Border Gateway Protocol - UPDATE Message
Marker: ffffffffffffffffffffffffffffffff
Length: 461
Type: UPDATE Message (2)
Withdrawn Routes Length: 0
Total Path Attribute Length: 438
Path attributes
Path Attribute - ORIGIN: IGP
Flags: 0x40, Transitive: Well-known, Transitive, Complete
0... .... = Optional: Well-known
.1.. .... = Transitive: Transitive
..0. .... = Partial: Complete
...0 .... = Length: Regular length
Type Code: ORIGIN (1)
Length: 1
Origin: IGP (0)
Path Attribute - AS_PATH: empty
Flags: 0x40, Transitive: Well-known, Transitive, Complete
0... .... = Optional: Well-known
.1.. .... = Transitive: Transitive
..0. .... = Partial: Complete
...0 .... = Length: Regular length
Type Code: AS_PATH (2)
Length: 0
Path Attribute - LOCAL_PREF: 100
Flags: 0x40, Transitive: Well-known, Transitive, Complete
0... .... = Optional: Well-known
.1.. .... = Transitive: Transitive
..0. .... = Partial: Complete
...0 .... = Length: Regular length
Type Code: LOCAL_PREF (5)
Length: 4
Local preference: 100
Path Attribute - Unknown (99)
Flags: 0x80, Optional: Optional, Non-transitive, Complete
1... .... = Optional: Optional
.0.. .... = Transitive: Non-transitive
..0. .... = Partial: Complete
...0 .... = Length: Regular length
Type Code: Unknown (99)
Length: 68
Unknown Path attributes
Path Attribute - MP_REACH_NLRI
Flags: 0x90, Optional, Length: Optional, Non-transitive, Complete, Extended Length
1... .... = Optional: Optional
.0.. .... = Transitive: Non-transitive
..0. .... = Partial: Complete
...1 .... = Length: Extended length
Type Code: MP_REACH_NLRI (14)
Length: 349
Address family identifier (AFI): Link State and TE information (16388)
Subsequent address family identifier (SAFI): Link State (71)
Next hop network address (4 bytes)
Next Hop: 10.1.1.1
Number of Subnetwork points of attachment (SNPA): 0
Network layer reachability information (340 bytes)
Link State SAFI 72 NLRI
NLRI Type: Link NLRI (2)
NLRI Length: 81
Link-State NLRI Link NLRI
Protocol ID: OSPF (3)
Identifier: L3 packet topology (0)
Local Node Descriptors TLV
Type: 256
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xxabcdxx
Remote Node Descriptors TLV
Type: 257
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xx3456xx
Link Descriptors TLV
IPv4 interface address TLV
Type: 259
Length: 4
IPv4 Interface Address: 1.2.3.4
IPv4 neighbor address TLV
Type: 260
Length: 4
IPv4 Neighbor Address: 2.3.4.5
Link State SAFI 72 NLRI
NLRI Type: Link NLRI (2)
NLRI Length: 81
Link-State NLRI Link NLRI
Protocol ID: OSPF (3)
Identifier: L3 packet topology (0)
Local Node Descriptors TLV
Type: 256
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xxabcdxx
Remote Node Descriptors TLV
Type: 257
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xx987xx
Link Descriptors TLV
IPv4 interface address TLV
Type: 259
Length: 4
IPv4 Interface Address: 3.4.5.6
IPv4 neighbor address TLV
Type: 260
Length: 4
IPv4 Neighbor Address: 4.5.6.7
Link State SAFI 72 NLRI
NLRI Type: Link NLRI (2)
NLRI Length: 81
Link-State NLRI Link NLRI
Protocol ID: OSPF (3)
Identifier: L3 packet topology (0)
Local Node Descriptors TLV
Type: 256
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xxabcdxx
Remote Node Descriptors TLV
Type: 257
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xxabc3xx
Link Descriptors TLV
IPv4 interface address TLV
Type: 259
Length: 4
IPv4 Interface Address: 5.6.7.8
IPv4 neighbor address TLV
Type: 260
Length: 4
IPv4 Neighbor Address: 6.7.8.9
Link State SAFI 72 NLRI
NLRI Type: Link NLRI (2)
NLRI Length: 81
Link-State NLRI Link NLRI
Protocol ID: OSPF (3)
Identifier: L3 packet topology (0)
Local Node Descriptors TLV
Type: 256
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xx1234xx
Remote Node Descriptors TLV
Type: 257
Length: 24
Autonomous System TLV
Type: 512
Length: 4
AS ID: XXASNXX (0xXXASNXX)
Area ID TLV
Type: 514
Length: 4
Area ID: 0 (0x00000000)
IGP Router-ID
Type: 515
Length: 4
IGP ID: xx87776xx
Link Descriptors TLV
IPv4 interface address TLV
Type: 259
Length: 4
IPv4 Interface Address: 7.8.9.10
IPv4 neighbor address TLV
Type: 260
Length: 4
IPv4 Neighbor Address: 8.9.10.11
from blt.
Thank you Guillaume, your dump does not contain the TE Default metric TLV (maybe elsewhere) but it is not a problem since the bug is now fixed : we need to accept various length from 1B to 4B in this TLV.
You can reach me out through Twitter, personal message @AlainMoretti
from blt.
This was one random update packet among a big number of updates, I've sent you the complete dump link on twitter.
However, you say "if the RID is routable and reachable, you can use it for SNMP", but it's actually not doing it. I can poll manually the devices from the blt server, but I don't see any snmp request initiated by BLT when listing to trafic.
Guillaume
from blt.
Since JunOS does not generate Topology prefix Link NLRI, we are left with no valid IP address on routers discovered through BGP linkstate, and thus no way to launch SNMP polling.
A last resort option would be to use router-id as a SNMP target, if IGP is OSPF and router is not a pseudonode.
This commit should handle this, let me know.
from blt.
Hi, Polling is happening.
I see a lots of "snmp task cancelled" stuff, so maybe it's not yet optimal but it's woirking :) thnks !
from blt.
Hi Guillaume, thank you
"snmp task cancelled" are expected events since once a router has been polled we don't need to do that again every time a new update is processed from BGP,.
This ensures that we do not miss a new router popping up in the topology.
from blt.
Related Issues (10)
- snmp v3 - support HOT 1
- BLT Still active project? HOT 1
- Error when receiving Link State DB (v0.4.3 iBGP to Junos) HOT 5
- BGP: keepalive interval bigger than hold time HOT 6
- feature: "Toggle Auto Refresh" status should be reflected visually HOT 3
- node infos always shown at the top HOT 8
- Dijkstra shortest path message should be in foreground HOT 2
- Negative impact of SNMP polling on BLT behaviour HOT 1
- Dijkstra shortest path calculation uses inactive link HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from blt.