5 -------------------------------------
6 query network interface configuration
7 -------------------------------------
9 :Author: Roopa Prabhu <roopa@cumulusnetworks.com>
11 :Copyright: Copyright 2014 Cumulus Networks, Inc. All rights reserved.
18 **ifquery [-v] [--allow CLASS] [--with-depends] -a|IFACE...**
20 **ifquery [-v] [-r|--running] [--allow CLASS] [--with-depends] -a|IFACE...**
22 **ifquery [-v] [-c|--check] [--allow CLASS] [--with-depends] -a|IFACE...**
24 **ifquery [-v] [-p|--print-dependency {list,dot}] [--allow CLASS] [--with-depends] -a|IFACE...**
26 **ifquery [-v] -s|--syntax-help**
30 **ifquery** can be used to parse interface configuration file, query
31 running state or check running state of the interface with configuration
32 in **/etc/network/interfaces** file.
34 **ifquery** always works on the current **interfaces(5)** file
35 **/etc/network/interfaces** unless an alternate interfaces file is
36 provided with the **-i** option.
42 **IFACE** interface list separated by spaces. **IFACE** list and **'-a'** argument are mutually exclusive.
46 -h, --help show this help message and exit
48 -a, --all process all interfaces marked "auto"
52 -d, --debug output debug info
53 --allow CLASS ignore non-"allow-CLASS" interfaces
55 -w, --with-depends run with all dependent interfaces. This option
56 is redundant when -a is specified. When '-a' is
57 specified, interfaces are always executed in
60 -X EXCLUDEPATS, --exclude EXCLUDEPATS
61 Exclude interfaces from the list of interfaces to
62 operate on. Can be specified multiple times
64 -i INTERFACESFILE, --interfaces INTERFACESFILE
65 Use interfaces file instead of default
66 /etc/network/interfaces
68 -t {native,json}, --interfaces-format {native,json}
69 interfaces file format
71 -r, --running print raw interfaces file entries
73 -c, --check check interface file contents against running state
74 of an interface. Returns exit code 0 on success and
77 -x, --raw print raw config file entries
79 -o {native,json}, --format {native,json}
80 interface display format
82 -p, --print-dependency {list,dot}
83 print iface dependency in list or dot format
85 -s, --syntax-help print supported interface config syntax. Scans all
86 addon modules and dumps supported syntax from them
87 if provided by the module.
91 # dump all or some interfaces config file entries
92 # (pretty prints user provided entries)
98 # Same as above but dump with dependencies
100 **ifquery br0 --with-depends**
102 # Check running state with the config in /etc/network/interfaces
104 **ifquery --check br0**
106 **ifquery --check --with-depends br0**
108 **ifquery --check -a**
110 # dump running state of all interfaces in /etc/network/interfaces format
112 **ifquery --running br0**
114 **ifquery --running --with-depends br0**
116 **ifquery --running -a**
118 # print dependency info in list format
120 **ifquery --print-dependency=list -a**
122 **ifquery --print-dependency=list br2000**
124 # print dependency info in dot format
126 **ifquery --print-dependency=dot -a**
128 **ifquery --print-dependency=dot br2000**
130 # Create an image (png) from the dot format
132 **ifquery --print-dependency=dot -a > interfaces.dot**
134 **dot -Tpng interfaces.dot > interfaces.png**
136 (The above command only works on a system with dot installed)
140 **ifquery --check** is currently experimental
142 **ifquery --check** cannot validate usercommands given under pre-up, post-up etc
143 There is currently no support to check/validate ethtool iface attributes
151 ifupdown-addons-interfaces(5)