<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Akvorado on Personal blog of Anurag Bhatia</title>
    <link>https://anuragbhatia.com/tags/akvorado/</link>
    <description>Recent content in Akvorado on Personal blog of Anurag Bhatia</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Fri, 10 Apr 2026 01:50:00 +0530</lastBuildDate><atom:link href="https://anuragbhatia.com/tags/akvorado/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Netflow for home router &amp; Linux servers</title>
      <link>https://anuragbhatia.com/post/2026/04/netflow-for-personal-devices/</link>
      <pubDate>Fri, 10 Apr 2026 01:50:00 +0530</pubDate>
      
      <guid>https://anuragbhatia.com/post/2026/04/netflow-for-personal-devices/</guid>
      <description>&lt;p&gt;For the last few weeks, I have been running a NetFlow collector for the home router. This is something I wanted to do for a long time, but I was missing the time to invest. There are a few open source options, and I guess many commercial solutions offering NetFlow, often bundled with other products.&lt;/p&gt;
&lt;p&gt;My personal monitoring is 100% open source and presently running Prometheus + Thanos + Node Exporter + Blackbox Exporter + SNMP Exporter  + Grafana + Grafana Loki + a few more exporters. So I started looking for open source options which are still under active development and supported.&lt;/p&gt;
&lt;p&gt;Two of them are quite popular  - &lt;a href=&#34;https://github.com/pmacct/pmacct&#34;&gt;Pmacct&lt;/a&gt; and &lt;a href=&#34;https://github.com/akvorado/akvorado&#34;&gt;Akvorado&lt;/a&gt;. Pmacct is extremely advanced, flexible, but at the same time overall complicated to set up (and maintain). Even their &lt;a href=&#34;https://github.com/pmacct/pmacct/blob/master/QUICKSTART&#34;&gt;quickstart file&lt;/a&gt; 3100-line file is full of setup options. On the other hand, Akvorado seems simpler to maintain. Some complications, anyway, are expected with NetFlow because the goal is not just to collect the data but also to have a system to store it, analyse it, map IPs to location/AS numbers, etc., dashboards, etc. It&amp;rsquo;s a tool developed by French ISP Free, which is part of the Iliad group, which also owns Scaleway.&lt;/p&gt;
&lt;p&gt;Setting up Akvorado is easy if you are familiar with Docker. They have a simple 4 command &lt;a href=&#34;https://demo.akvorado.net/docs/intro#quick-start&#34;&gt;quick-start&lt;/a&gt; which deploys all their containers as part of the stack. They deploy a few containers as part of the overall stack.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cdn.anuragbhatia.com/web/post/2026/04/netflow-for-personal-devices/akvorado_design.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;The &lt;a href=&#34;https://demo.akvorado.net/docs/intro#big-picture&#34;&gt;big picture page&lt;/a&gt; on their demo site documentation covers the overall architecture. I started feeding it data from the home (Mikrotik) router and later also added various Linux servers/VMs I manage for R&amp;amp;D, DNS, as well as to host this blog and other infrastructure. For Linux, I am using Pmacct as an exporter, as &lt;a href=&#34;https://demo.akvorado.net/docs/operations#gnulinux&#34;&gt;Akvorado&amp;rsquo;s documentation&lt;/a&gt; suggests using it in exporter mode and has a sample config which works.&lt;/p&gt;
&lt;h3 id=&#34;some-data&#34;&gt;Some data&lt;/h3&gt;
&lt;p&gt;Now that it&amp;rsquo;s been running for a few weeks, I can see major sources of data coming to the home. Before jumping to data, it&amp;rsquo;s important to note that I have regular camera feeds uploading traffic to my server in Mumbai, and some backups, route collector data pull and automated speedtests at home. All these kinds of &amp;ldquo;pollute&amp;rdquo; data, and thus, it is more fun to exclude and look for remaining data coming from regular usage by end devices at home. In the setup, I can easily filter data based on srcAS, dstAS, srcIP, dstIP, port, in and out interfaces, etc.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s the data for the last 10 days towards end devices (excluding home server and camera traffic)&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cdn.anuragbhatia.com/web/post/2026/04/netflow-for-personal-devices/Home_traffic_last-10days.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;While most of ASNs here are expected, but just for the context, Esto AS135817 is one of the upstreams at home (friendly ISP that I reach over a GRE tunnel over an IX from an underlying ISP), and most of the traffic hitting it is actually CDN traffic for Google GGC, Facebook FNA, etc., sitting on their IPs.&lt;/p&gt;
&lt;p&gt;What is more fun here are the Sankey graphs, where for a given interval, I can map ANY attribute -&amp;gt; ANY other attribute. e.g., srcAS -&amp;gt; Home Out interfaces or SrcPort -&amp;gt; SrcAS -&amp;gt; Destination IPs, etc.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s the Sankey Graph for SrcPort -&amp;gt; SrcAS -&amp;gt; In Interface at home&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cdn.anuragbhatia.com/web/post/2026/04/netflow-for-personal-devices/sankey1.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;On this connection, I get most of Google traffic from Google&amp;rsquo;s AS directly; however, for a few days, I was on Airtel as primary due to an outage on the underlying ISP and thus could not reach Esto over the tunnel. For those days, traffic patterns were very different. Both Google and Akamai terminated most of the traffic on caching nodes within Airtel.&lt;/p&gt;
&lt;p&gt;Traffic profile when running home traffic via Airtel:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cdn.anuragbhatia.com/web/post/2026/04/netflow-for-personal-devices/sankey2.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;Akvorado has support for Grafana, and while their dashboard seems good for usual lookups, I miss a pie chart. Let&amp;rsquo;s see what the pie chart of the last 10 days&amp;rsquo; traffic looks like:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cdn.anuragbhatia.com/web/post/2026/04/netflow-for-personal-devices/pie3.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;Another fun thing is to look for traffic by Etype for IPv4 Vs IPv6 comparison. Let&amp;rsquo;s see how much IPv4 Vs IPv6 traffic there is in the last week:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cdn.anuragbhatia.com/web/post/2026/04/netflow-for-personal-devices/sankey3.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;The same logic can be used to have a pie chart, but it has to be in Grafana.&lt;/p&gt;
&lt;figure&gt;&lt;img src=&#34;https://cdn.anuragbhatia.com/web/post/2026/04/netflow-for-personal-devices/pie4.png&#34; width=&#34;300&#34; height=&#34;120&#34;&gt;
&lt;/figure&gt;

&lt;p&gt;Thus for now 89% of traffic is IPv6 at home. On that note, time to end this post.  😀&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>