DOKK / manpages / debian 10 / ifupdown2 / ifquery.8.en
IFQUERY(8) IFQUERY(8)

ifquery - query network interface configuration

ifquery [-v] [--allow CLASS] [--with-depends] -a|IFACE...

ifquery [-v] [-r|--running] [--allow CLASS] [--with-depends] -a|IFACE...

ifquery [-v] [-c|--check] [--allow CLASS] [--with-depends] -a|IFACE...

ifquery [-v] [-p|--print-dependency {list,dot}] [--allow CLASS] [--with-depends] -a|IFACE...

ifquery [-v] -s|--syntax-help



ifquery can be used to parse interface configuration file, query running state or check running state of the interface with configuration in /etc/network/interfaces file.

ifquery always works on the current interfaces(5) file /etc/network/interfaces unless an alternate interfaces file is defined in ifupdown2.conf or provided with the -i option. Note: the -i option is enabled by default in ifupdown2.conf.



positional arguments:

IFACE interface list separated by spaces. IFACE list and '-a' argument are mutually exclusive.

optional arguments:

show this help message and exit
process all interfaces marked "auto"
verbose
output debug info
ignore non-"allow-CLASS" interfaces
run with all dependent interfaces. This option is redundant when -a is specified. When '-a' is specified, interfaces are always executed in dependency order.
Exclude interfaces from the list of interfaces to operate on. Can be specified multiple times If the excluded interface has dependent interfaces, (e.g. a bridge or a bond with multiple enslaved interfaces) then each dependent interface must be specified in order to be excluded.
Use interfaces file instead of default defined in ifupdown2.conf (default /etc/network/interfaces)


print raw interfaces file entries
check interface file contents against running state of an interface. Returns exit code 0 on success and 1 on error
print raw config file entries

interface display format
print iface dependency in list or dot format

print supported interface config syntax. Scans all addon modules and dumps supported syntax from them if provided by the module.



# dump all or some interfaces config file entries # (pretty prints user provided entries)
ifquery -a

ifquery br0



# Same as above but dump with dependencies

ifquery br0 --with-depends


# Check running state with the config in /etc/network/interfaces

ifquery --check br0

ifquery --check --with-depends br0

ifquery --check -a



# dump running state of all interfaces in /etc/network/interfaces format

ifquery --running br0

ifquery --running --with-depends br0

ifquery --running -a



# print dependency info in list format

ifquery --print-dependency=list -a

ifquery --print-dependency=list br2000



# print dependency info in dot format

ifquery --print-dependency=dot -a

ifquery --print-dependency=dot br2000



# Create an image (png) from the dot format

ifquery --print-dependency=dot -a > interfaces.dot

dot -Tpng interfaces.dot > interfaces.png

(The above command only works on a system with dot installed)





ifquery --check is currently experimental

ifquery --check cannot validate usercommands given under pre-up, post-up etc There is currently no support to check/validate ethtool iface attributes




Roopa Prabhu <roopa@cumulusnetworks.com>

Copyright 2014 Cumulus Networks, Inc. All rights reserved.

2014-02-05 0.1