{
    "mode": "man",
    "parameter": "ctstat",
    "section": "8",
    "url": "https://www.chedong.com/phpMan.php/man/ctstat/8/json",
    "generated": "2026-10-04T13:59:05Z",
    "synopsis": "lnstat [options]",
    "sections": {
        "NAME": {
            "content": "lnstat - unified linux network statistics\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "lnstat [options]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "This manual page documents briefly the lnstat command.\n\nlnstat  is a generalized and more feature-complete replacement for the old rtstat program. It\nis commonly used to periodically print a selection of statistical values exported by the ker‐\nnel.  In addition to routing cache statistics, it supports any kind of statistics  the  linux\nkernel exports via a file in /proc/net/stat/.\n\nEach  file  in  /proc/net/stat/ contains a header line listing the column names.  These names\nare used by lnstat as keys for selecting which statistics to print. For every CPU present  in\nthe  system, a line follows which lists the actual values for each column of the file. lnstat\nsums these values up (which in fact are counters) before printing them. After each  interval,\nonly the difference to the last value is printed.\n\nFiles  and columns may be selected by using the -f and -k parameters. By default, all columns\nof all files are printed.\n",
            "subsections": []
        },
        "OPTIONS": {
            "content": "lnstat supports the following options.\n",
            "subsections": [
                {
                    "name": "-h, --help",
                    "content": "Show summary of options.\n",
                    "flag": "-h",
                    "long": "--help"
                },
                {
                    "name": "-V, --version",
                    "content": "Show version of program.\n",
                    "flag": "-V",
                    "long": "--version"
                },
                {
                    "name": "-c, --count <count>",
                    "content": "Print <count> number of intervals.\n",
                    "flag": "-c",
                    "long": "--count",
                    "arg": "<count>"
                },
                {
                    "name": "-d, --dump",
                    "content": "Dump list of available files/keys.\n",
                    "flag": "-d",
                    "long": "--dump"
                },
                {
                    "name": "-f, --file <file>",
                    "content": "Statistics file to use, may be specified multiple  times.  By  default  all  files  in\n/proc/net/stat are scanned.\n",
                    "flag": "-f",
                    "long": "--file",
                    "arg": "<file>"
                },
                {
                    "name": "-i, --interval <intv>",
                    "content": "Set interval to 'intv' seconds.\n",
                    "flag": "-i",
                    "long": "--interval",
                    "arg": "<intv>"
                },
                {
                    "name": "-j, --json",
                    "content": "Display results in JSON format\n",
                    "flag": "-j",
                    "long": "--json"
                },
                {
                    "name": "-k, --keys k,k,k,...",
                    "content": "Display only keys specified. Each key k is of the form [file:]key. If <file> is given,\nthe  search  for  the given key is limited to that file. Otherwise the first file con‐\ntaining the searched key is being used.\n",
                    "flag": "-k",
                    "long": "--keys"
                },
                {
                    "name": "-s, --subject [0-2]",
                    "content": "Specify display of subject/header. '0' means no header at all,  '1'  prints  a  header\nonly at start of the program and '2' prints a header every 20 lines.\n",
                    "flag": "-s",
                    "long": "--subject",
                    "arg": "[0-2]"
                },
                {
                    "name": "-w, --width n,n,n,...",
                    "content": "Width for each field.\n",
                    "flag": "-w",
                    "long": "--width"
                }
            ]
        },
        "USAGE EXAMPLES": {
            "content": "",
            "subsections": [
                {
                    "name": "# lnstat -d",
                    "content": "Get a list of supported statistics files.\n"
                },
                {
                    "name": "# lnstat -k arp_cache:entries,rt_cache:in_hit,arp_cache:destroys",
                    "content": "Select the specified files and keys.\n"
                },
                {
                    "name": "# lnstat -i 10",
                    "content": "Use an interval of 10 seconds.\n"
                },
                {
                    "name": "# lnstat -f ip_conntrack",
                    "content": "Use only the specified file for statistics.\n"
                },
                {
                    "name": "# lnstat -s 0",
                    "content": "Do not print a header at all.\n"
                },
                {
                    "name": "# lnstat -s 20",
                    "content": "Print a header at start and every 20 lines.\n"
                },
                {
                    "name": "# lnstat -c -1 -i 1 -f rt_cache -k entries,in_hit,in_slow_tot",
                    "content": "Display  statistics  for  keys entries, inhit and inslowtot of field rtcache every\nsecond.\n\n"
                }
            ]
        },
        "FILES": {
            "content": "",
            "subsections": [
                {
                    "name": "/proc/net/stat/arp_cache, /proc/net/stat/ndisc_cache",
                    "content": "Statistics around neighbor cache and ARP. arpcache is for IPv4,  ndisccache  is  the\nsame for IPv6.\n\nentries Number of entries in the neighbor table.\n\nallocs How many neighbor entries have been allocated.\n\ndestroys How many neighbor entries have been removed.\n\nhashgrows How often the neighbor (hash) table was increased.\n\nlookups How many lookups were performed.\n\nhits How many lookups were successful.\n\nresfailed How many neighbor lookups failed.\n\nrcvprobesmcast How many multicast neighbor solicitations were received. (IPv6 only.)\n\nrcvprobesucast How many unicast neighbor solicitations were received. (IPv6 only.)\n\nperiodicgcruns How many garbage collection runs were executed.\n\nforcedgcruns  How  many  forced  garbage collection runs were executed. Happens when\nadding an entry and the table is too full.\n\nunresolveddiscards How many neighbor table entries were discarded due to lookup fail‐\nure.\n\ntablefulls Number of table overflows. Happens if table is full and forced GC run (see\nforcedgcruns) has failed.\n\n"
                },
                {
                    "name": "/proc/net/stat/ip_conntrack, /proc/net/stat/nf_conntrack",
                    "content": "Conntrack related counters. ipconntrack is for  backwards  compatibility  with  older\nuserspace only and shows the same data as nfconntrack.\n\nentries Number of entries in conntrack table.\n\nsearched Number of conntrack table lookups performed.\n\nfound Number of searched entries which were successful.\n\nnew Number of conntrack entries added which were not expected before.\n\ninvalid Number of packets seen which can not be tracked.\n\nignore Number of packets seen which are already connected to a conntrack entry.\n\ndelete Number of conntrack entries which were removed.\n\ndeletelist Number of conntrack entries which were put to dying list.\n\ninsert Number of entries inserted into the list.\n\ninsertfailed  Number  of  entries  for  which list insertion was attempted but failed\n(happens if the same entry is already present).\n\ndrop Number of packets dropped due to conntrack failure. Either  new  conntrack  entry\nallocation failed, or protocol helper dropped the packet.\n\nearlydrop  Number  of dropped conntrack entries to make room for new ones, if maximum\ntable size was reached.\n\nicmperror Number of packets which could not be tracked due to error  situation.  This\nis a subset of invalid.\n\nexpectnew Number of conntrack entries added after an expectation for them was already\npresent.\n\nexpectcreate Number of expectations added.\n\nexpectdelete Number of expectations deleted.\n\nsearchrestart  Number  of  conntrack  table  lookups which had to be restarted due to\nhashtable resizes.\n\n"
                },
                {
                    "name": "/proc/net/stat/rt_cache",
                    "content": "Routing cache statistics.\n\nentries Number of entries in routing cache.\n\ninhit Number of route cache hits for incoming  packets.  Deprecated  since  IP  route\ncache removal, therefore always zero.\n\ninslowtot Number of routing cache entries added for input traffic.\n\ninslowmc Number of multicast routing cache entries added for input traffic.\n\ninnoroute Number of input packets for which no routing table entry was found.\n\ninbrd Number of matched input broadcast packets.\n\ninmartiandst Number of incoming martian destination packets.\n\ninmartiansrc Number of incoming martian source packets.\n\nouthit  Number  of  route  cache hits for outgoing packets. Deprecated since IP route\ncache removal, therefore always zero.\n\noutslowtot Number of routing cache entries added for output traffic.\n\noutslowmc Number of multicast routing cache entries added for output traffic.\n\ngctotal Total number of garbage collection runs. Deprecated since IP route cache  re‐\nmoval, therefore always zero.\n\ngcignored  Number  of  ignored garbage collection runs due to minimum GC interval not\nreached and routing cache not full. Deprecated since IP route cache removal, therefore\nalways zero.\n\ngcgoalmiss Number of garbage collector goal misses. Deprecated since IP route  cache\nremoval, therefore always zero.\n\ngcdstoverflow Number of destination cache overflows. Deprecated since IP route cache\nremoval, therefore always zero.\n\ninhlistsearch  Number  of  hash  table list traversals for input traffic. Deprecated\nsince IP route cache removal, therefore always zero.\n\nouthlistsearch Number of hash table list traversals for output  traffic.  Deprecated\nsince IP route cache removal, therefore always zero.\n\n"
                }
            ]
        },
        "SEE ALSO": {
            "content": "ip(8)\n",
            "subsections": []
        },
        "AUTHOR": {
            "content": "lnstat was written by Harald Welte <laforge@gnumonks.org>.\n\nThis  manual  page  was written by Michael Prokop <mika@grml.org> for the Debian project (but\nmay be used by others).\n\nLNSTAT(8)",
            "subsections": []
        }
    },
    "summary": "lnstat - unified linux network statistics",
    "flags": [
        {
            "flag": "-h",
            "long": "--help",
            "arg": null,
            "description": "Show summary of options."
        },
        {
            "flag": "-V",
            "long": "--version",
            "arg": null,
            "description": "Show version of program."
        },
        {
            "flag": "-c",
            "long": "--count",
            "arg": "<count>",
            "description": "Print <count> number of intervals."
        },
        {
            "flag": "-d",
            "long": "--dump",
            "arg": null,
            "description": "Dump list of available files/keys."
        },
        {
            "flag": "-f",
            "long": "--file",
            "arg": "<file>",
            "description": "Statistics file to use, may be specified multiple times. By default all files in /proc/net/stat are scanned."
        },
        {
            "flag": "-i",
            "long": "--interval",
            "arg": "<intv>",
            "description": "Set interval to 'intv' seconds."
        },
        {
            "flag": "-j",
            "long": "--json",
            "arg": null,
            "description": "Display results in JSON format"
        },
        {
            "flag": "-k",
            "long": "--keys",
            "arg": null,
            "description": "Display only keys specified. Each key k is of the form [file:]key. If <file> is given, the search for the given key is limited to that file. Otherwise the first file con‐ taining the searched key is being used."
        },
        {
            "flag": "-s",
            "long": "--subject",
            "arg": null,
            "description": "Specify display of subject/header. '0' means no header at all, '1' prints a header only at start of the program and '2' prints a header every 20 lines."
        },
        {
            "flag": "-w",
            "long": "--width",
            "arg": null,
            "description": "Width for each field."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "ip",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/ip/8/json"
        }
    ]
}