Operation and Maintenance
Linux Operation and Maintenance
How to configure network interfaces in Linux from the command line? (ip Command)
How to configure network interfaces in Linux from the command line? (ip Command)
Use the ip command to configure the Linux network interface: check the status with ip addr show, add and delete IPs with ip addr add/del, start and stop the interface with ip link set up/down, and set the gateway route with ip route add/del. All changes must be written to the system configuration file to invalidate the restart.

To configure network interfaces in Linux from the command line, use the ip command — it's the modern, versatile replacement for the older ifconfig . It handles addressing, routing, and link configuration in a unified way.
View current interface status
Run ip addr show (or ip a ) to list all interfaces and their IPv4/IPv6 addresses, status (UP/DOWN), and MAC addresses. Use ip link show to see just link-layer info like MTU, state, and hardware address.
Add or remove an IP address
You can assign multiple IPs to one interface without disrupting existing ones.
- Add IPv4: ip addr add 192.168.1.100/24 dev eth0
- Add IPv6: ip addr add 2001:db8::100/64 dev eth0
- Remove an address: ip addr del 192.168.1.100/24 dev eth0
Bring interfaces up or down
Control interface state directly:
- Enable: ip link set eth0 up
- Disable: ip link set eth0 down
- Change MTU: ip link set eth0 mtu 1400
- Set MAC address (requires interface down first): ip link set eth0 address 00:11:22:33:44:55
Configure default gateway and routing
Use ip route to manage routing tables:
- Add default gateway: ip route add default via 192.168.1.1 dev eth0
- Add static route: ip route add 10.10.0.0/16 via 192.168.1.254 dev eth0
- View routes: ip route show
- Delete default route: ip route del default
Changes made with ip are temporary — they vanish after reboot. To make them persistent, write configurations to your distribution's network setup files (eg, /etc/network/interfaces on Debian/Ubuntu or /etc/sysconfig/network-scripts/ifcfg-eth0 on RHEL/CentOS).
Basically, ip gives you precise, script-friendly control — just remember that interface names (like eth0, enp0s3) vary by system, and always verify changes with ip a and ip r .
The above is the detailed content of How to configure network interfaces in Linux from the command line? (ip Command). For more information, please follow other related articles on the PHP Chinese website!
Hot AI Tools
Undress AI Tool
Undress images for free
AI Clothes Remover
Online AI tool for removing clothes from photos.
Undresser.AI Undress
AI-powered app for creating realistic nude photos
ArtGPT
AI image generator for creative art from text prompts.
Stock Market GPT
AI powered investment research for smarter decisions
Hot Article
Popular tool
Notepad++7.3.1
Easy-to-use and free code editor
SublimeText3 Chinese version
Chinese version, very easy to use
Zend Studio 13.0.1
Powerful PHP integrated development environment
Dreamweaver CS6
Visual web development tools
SublimeText3 Mac version
God-level code editing software (SublimeText3)
Hot Topics
20521
7
13634
4
How to install Redis cluster on Linux_Linux distributed cache deployment solution [Advanced]
Feb 08, 2026 pm 07:39 PM
The Redis6 cluster must be created with redis-cli--cluster. It requires a minimum of 3 masters and 3 slaves, a total of 6 nodes. The client port and the corresponding cluster bus port (10000) must be opened. Correct configuration but blocked ports is a common cause of failure.
How to import SQL files in mysql_mysql SQL file import method
Feb 09, 2026 pm 05:24 PM
The most common and reliable way to import SQL files into MySQL is the command line tool mysql, which supports cross-platform, high efficiency and stability, and is suitable for files of all sizes. It can also be executed in the client through the source command, or using graphical tools such as phpMyAdmin and MySQL Workbench.
How to check system vulnerabilities in Linux_Linux installation and use of security scanning tools [Plan]
Feb 08, 2026 pm 08:22 PM
Linux systems need to use third-party tools for security scanning; lynis is suitable for lightweight local auditing, openvas must be deployed with Docker, nmap and nessus cannot be automatically connected, and the effectiveness of scanning depends on credentials, settings and feed updates.
How to diagnose mysql query performance bottleneck_mysql performance analysis method
Feb 08, 2026 am 09:45 AM
Slow query optimization requires four layers of troubleshooting: "Log → Execution Plan → System Indicators → Configure Hardware": first open slow_query_log to capture queries that exceed 1 second; then use EXPLAIN to analyze type, key, rows and Extra; then check sar, buffer pool hit rate, lock wait and number of connections; finally examine innodb_flush_method, redolog size, large field storage and network architecture.
How to check the kernel version in Linux_Linux query system kernel uname command [Basic]
Feb 08, 2026 pm 07:48 PM
uname-r is the most accurate and quick way to obtain the current kernel version number. It only outputs the release field such as 6.1.0-22-amd64, without redundant information, which is convenient for script parsing; other commands such as uname-v, uname-a or /proc/version have their own uses but are not specifically used for version extraction.
How to check the MAC address of the network card in Linux_Linux obtains the physical network card information [Notes]
Feb 08, 2026 pm 08:25 PM
The most reliable way is to use the iplinkshow command, because it is compatible with old and new kernels, has clear output, and does not confuse virtual interfaces; the MAC address is located after the link/ether line and can be accurately extracted with grep.
How to install the GCC compiler on Linux_Essential environment for Linux source code compilation [Tutorial]
Feb 08, 2026 pm 08:28 PM
Using sudoaptinstallbuild-essential is the fastest under Ubuntu/Debian. It automatically installs gcc, g, make, libc6-dev, etc.; only installing gcc will report an error that stdio.h does not exist due to a missing header file.
Ultimate solution to ZAP installation failure: Why you must install JDK and not just JRE
Feb 08, 2026 am 11:15 AM
When ZAP (ZedAttackProxy) is installed, it prompts "Java 64-bit file not found." The root cause is not that Java is not installed, but that the JRE that only contains the running environment is mistakenly installed; ZAP actually relies on JDK11 (such as JDK21) because it requires the use of development components such as compilers and debugging tools.





