-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ASN Statistics broken #72
Comments
That's odd - if you query some raw data, does it have any
|
Okay, this is a funny one: We have two distinct (or kinda related) problems here. Junos IPFIXOn the IPFIX Setup I get flow entries like this:
So,
https://www.plixer.com/blog/juniper-mx240-ipfix-support-direction-problems/ So an easy solution would be to match Junos sFlowThen there's a second setup using sflow on JunOS. There are only entries with
It definitively is sampling both directions, so I don't know why it sets the FlowDirection to 0. I'll grab some pcaps and try to figure out what's going on there. But even then it should display something on the SrcASN Graph, right? Well, just Reserved-ASN 0. This is because SrcAS and DstAS are both set to 0. So I guess we have to check if the value is zero and perform another lookup in the risinfo dict. sFlow Dump:
|
Thanks for debugging!
Happy to implement this - if I understood the linked article correctly, this would result in correct-ish data by counting all ingress/egress traffic in both tables, right? I suppose we could also implement #60 and use interface IDs to figure out the flow direction instead, which would also solve the problem with sFlow where no FlowDirection is included. We already do something similar for the other graphs:
It definitely should do exactly that, this is what it looks like on one of my sFlow samplers: The solution here is to fill in ASN data using the risinfo dict at capture time to have proper historic data - this is already on the short-term backlog and shouldn't be hard to do. |
this is correct.
Yes, in that case every flow is labeled as "in" right now, which can be a bit confusing. |
Sounds to me like the "correct" solution is to fix up the data at ingestion time. Your data seems to have correct |
But how do you know if a interface is a edge-port or some internal/backbone interface? Set a flag in the interfaceMap? |
Yup, that was the idea - just have a map of all interfaces and which way they're facing, possibly determined from Netbox and/or SNMP. Does that sound workable? |
Not nice, but probably the best solution. |
Yeah... I don't think we can avoid it unless the device tells us the physical flow direction, which it doesn't want to... How about having a list of "local" CIDR ranges and using that to determine direction? AS won't work but IPs might. |
This would work fine for Hosting-Provider-Like networks but not so well for ISP networks with downstream ASNs (like ours.). |
Hmm...we could do that! No half measures 😆 How would that look like - use BGP/BMP to figure out local networks? |
Yup. BGP/BMP integration could become useful anyways. We could work with BGP communities. |
Okay, let's do that - sounds like the "correct" solution. (was meaning to have BMP support anyway to get AS path and avoid the risinfo trick)
i.e. have a config setting which communities mark "local" networks? |
yes. And we can generalize this to use other communities as well for filtering.. For example customer networks, region/city communities, etc. |
This is now implemented, thanks again :) |
The FlowDirection issue is still open :/ |
The issue with the FlowDirection is partly happening on portmirror deployments too, because the flow data that gets ingested only has one InIf/OutIf set. Because of this, all Graphs have the sum of all traffic from the other direction displayed. We should probably find a way to infer it ourselves since it is the broader solution to issues like this |
In our setups with exports from Junos based routers (using both sflow and netflow) the default dashboard doesn't display any ASN statistics.
When I remove the
AND FlowDirection =
conditions from the queries everything works fine.Maybe our routers don't add FlowDirection Attributes to the flowsamples?
Is it possible to remove the condition?
The text was updated successfully, but these errors were encountered: