ip-netconf
Manage network configuration
SYNOPSIS
As ip-netconf is not a specific command, its 'synopsis' refers to the general syntax of the ip utility, which is used for IP network configuration:
ip [ OPTIONS ] OBJECT { COMMAND | help }
Where:
OBJECT is one of the network components being managed, such as link (network interfaces), address (IP addresses), route (routing table entries), neigh (neighbor/ARP table), netns (network namespaces), etc.
COMMAND is the action to perform on the OBJECT, like add, delete, show, set, flush.
PARAMETERS
-4, -6
Filter by IP protocol version.
Specify whether to operate on IPv4 or IPv6 addresses and routes. If omitted, both are typically considered.
-s, --statistics
Display extended statistics.
Shows additional statistics for objects like network interfaces or routes.
-d, --details
Show more details.
Provides a more verbose output for the queried objects.
-h, --human
Human-readable output.
Displays values in a more human-friendly format, e.g., byte sizes with units.
-o, --oneline
Single-line output.
Formats the output of multiple entries onto a single line per entry, useful for scripting.
-r, --resolve
Resolve hostnames.
Attempts to resolve IP addresses to hostnames.
-V, --version
Display version information.
Shows the version of the iproute2 utility suite.
-f, --family FAMILY
Specify address family.
Forces the command to operate only on the specified address family (e.g., inet for IPv4, inet6 for IPv6, link for layer 2).
-a, --all
Operate on all objects.
Used with commands like ip addr flush to clear all addresses.
DESCRIPTION
The term ip-netconf does not refer to a standalone Linux command or a specific subcommand within the iproute2 suite. Instead, it conceptually represents the broad range of functionalities for IP network configuration provided by the versatile ip command. The ip utility is the primary tool in modern Linux distributions for managing various aspects of the networking subsystem. It allows administrators to configure network interfaces, assign IP addresses, manipulate routing tables, manage ARP/neighbor entries, control network namespaces, set up tunnels, and much more. Unlike older utilities like ifconfig and route, which fragmented network management tasks, ip adopts an object-oriented syntax (e.g., ip link, ip addr, ip route) that provides a unified and powerful interface for comprehensive network stack management. Its capabilities extend from basic interface setup to complex routing policies and advanced network virtualization. Therefore, ip-netconf can be understood as the collective actions performed using the ip command for configuring the network.
CAVEATS
- Conceptual Term: ip-netconf is not an actual command; it represents the broad utility of the ip command for network configuration.
- Root Privileges: Most operations with the ip command require root or superuser privileges to modify network settings. Displaying information often does not require root.
- Syntax Complexity: The ip command has a rich, object-oriented syntax that can be complex for beginners, differing significantly from older tools like ifconfig and route.
- Non-Persistent Changes: Changes made directly with the ip command are often temporary and do not persist across system reboots. Persistent network configuration typically requires editing distribution-specific configuration files (e.g., /etc/network/interfaces on Debian/Ubuntu, /etc/sysconfig/network-scripts/ on RHEL/CentOS, or using NetworkManager).
OBJECT-ORIENTED NATURE
The ip command employs an object-oriented paradigm where network components are treated as 'objects' (e.g., link, address, route). Users specify the object type followed by a command (e.g., show, add, del) and parameters specific to that object. This unified structure makes network management more logical and powerful compared to the fragmented approach of older utilities.
HISTORY
The ip utility, which is the core of 'IP network configuration' on modern Linux systems, is part of the iproute2 utility suite. This suite was developed by Alexey Kuznetsov to address the limitations and lack of integration found in older, disparate networking tools like ifconfig, route, and arp. iproute2 emerged to provide a unified, consistent, and powerful interface for managing the Linux kernel's networking subsystem, especially with the advent of advanced features like policy routing, network namespaces, and various tunneling protocols. It has gradually replaced the older net-tools commands as the standard for configuring and monitoring network interfaces and routing. Its design reflects the complexities of modern network infrastructures, offering granular control and better performance.