Scroll to navigation

IFQUERY(8) IFQUERY(8)

NAME

ifquery - query network interface configuration

SYNOPSIS

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



DESCRIPTION

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.



OPTIONS

positional arguments:

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

optional arguments:

-h, --help
show this help message and exit
-a, --all
process all interfaces marked "auto"
-v, --verbose
verbose
-d, --debug
output debug info
--allow CLASS
ignore non-"allow-CLASS" interfaces
-w, --with-depends
run with all dependent interfaces. This option is redundant when -a is specified. When '-a' is specified, interfaces are always executed in dependency order.
-X EXCLUDEPATS, --exclude EXCLUDEPATS
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.
-i INTERFACESFILE, --interfaces INTERFACESFILE
Use interfaces file instead of default defined in ifupdown2.conf (default /etc/network/interfaces)

-t {native,json}, --interfaces-format {native,json}
interfaces file format

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

-o {native,json}, --format {native,json}
interface display format
-p, --print-dependency {list,dot}
print iface dependency in list or dot format

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



EXAMPLES

# 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)





KNOWN_ISSUES

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



SEE ALSO


AUTHOR

Roopa Prabhu <roopa@cumulusnetworks.com>

COPYRIGHT

Copyright 2014 Cumulus Networks, Inc. All rights reserved.
2014-02-05 0.1