服务器测评网
我们一直在努力

Linux查看系统IP地址命令有哪些?新手必学技巧

在Linux系统中,查看IP地址是日常管理和运维中的基础操作,掌握多种方法有助于根据不同场景灵活选择,本文将详细介绍通过命令行查看系统IP地址的多种方式,涵盖传统工具与现代命令,并解析各命令的输出信息及适用场景。

Linux查看系统IP地址命令有哪些?新手必学技巧

使用ifconfig命令查看IP地址

ifconfig是传统的网络配置工具,源于BSD系统,在早期的Linux发行版中广泛使用,尽管在现代系统中逐渐被ip命令取代,但许多发行版仍通过net-tools包保留该命令。

安装ifconfig

若系统中未安装ifconfig,可通过以下命令安装:

  • 基于Debian/Ubuntu的系统:
    sudo apt update && sudo apt install net-tools
  • 基于RHEL/CentOS的系统:
    sudo yum install net-tools

基本使用

直接输入ifconfig命令将显示所有网络接口的详细信息,包括UP/DOWN状态、IP地址、子网掩码、MAC地址等。

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::a00:27ff:fe4e:66a9  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:4e:66:a9  txqueuelen 1000  (Ethernet)
        RX packets 1234  bytes 123456 (123.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 567  bytes 78901 (77.0 KiB)
        TX errors 0  dropped 0  overruns 0  carrier 0  collisions 0

inet字段显示IPv4地址,inet6字段显示IPv6地址,ether字段为MAC地址。

查看特定接口

若仅需查看某个网络接口(如eth0)的信息,可加上接口名:

ifconfig eth0

启用/禁用接口

ifconfig还可临时修改接口状态,例如启用eth0

sudo ifconfig eth0 up

禁用接口则使用:

sudo ifconfig eth0 down

使用ip命令查看IP地址

ip命令是iproute2包的一部分,是现代Linux系统中推荐的网络配置工具,功能更全面且输出更结构化,它逐渐取代了ifconfigroutenetstat等传统命令。

基本语法

ip命令的通用格式为ip [选项] [对象] [操作],查看IP地址主要涉及addr对象。

查看所有接口IP地址

输入以下命令可显示所有网络接口的IP地址信息:

Linux查看系统IP地址命令有哪些?新手必学技巧

ip addr

或简写为:

ip a

输出示例:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:4e:66:a9 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe4e:66a9/64 scope link 
       valid_lft forever preferred_lft forever

输出中,lo为回环接口,eth0为以太网接口。inet后为IPv4地址及子网掩码(如/24表示255.255.255.0),inet6后为IPv6地址。

查看特定接口IP地址

若仅需查看eth0的IP地址,可使用:

ip addr show eth0

或简写为:

ip a show eth0

查看简洁IP信息

若仅需显示IP地址和接口名,可结合grep命令过滤:

ip a | grep 'inet ' | awk '{print $2}'

输出示例:

0.0.1/8
192.168.1.100/24
fe80::a00:27ff:fe4e:66a9/64

其他常用操作

  • 添加临时IP地址:
    sudo ip addr add 192.168.1.200/24 dev eth0
  • 删除临时IP地址:
    sudo ip addr del 192.168.1.200/24 dev eth0

使用hostname命令查看IP地址

hostname命令主要用于查看或设置系统主机名,但结合-I选项可快速显示所有接口的IPv4地址(不含IPv6)。

基本使用

hostname -I

输出示例:

168.1.100 10.0.0.1

该命令适用于仅需快速获取IPv4地址的场景,输出简洁,但无法显示子网掩码、MAC地址等详细信息。

Linux查看系统IP地址命令有哪些?新手必学技巧

查看主机名及IP

若需同时查看主机名和IP地址,可结合其他命令:

echo "Hostname: $(hostname)"; echo "IP: $(hostname -I)"

使用nmcli命令查看IP地址

nmcli是NetworkManager的命令行工具,适用于需要管理网络连接的场景(如NetworkManager控制的系统),它不仅能查看IP地址,还能管理连接配置、DHCP等。

查看所有连接的IP地址

nmcli connection show

该命令列出所有网络连接,包括活动和非活动连接,若需查看活动连接的详细信息:

nmcli connection show --active

查看特定连接的IP配置

例如查看eth0连接的IP地址:

nmcli connection show "eth0" | grep ipv4.addresses

或更详细的信息:

nmcli connection show "eth0"

查看实时网络状态

nmcli device status

输出示例:

DEVICE  TYPE      STATE      CONNECTION 
eth0    ethernet  connected   eth0      
wlan0   wifi      disconnected --        
lo      loopback  unmanaged   --        

使用iproute2工具包的其他命令

iproute2工具包还包含sstc等命令,可通过组合实现更复杂的网络查看需求,结合ipss查看监听端口对应的IP地址:

ss -tulnp | grep ':80'

不同场景下的工具选择

  1. 快速查看IPv4地址:优先使用hostname -I,输出简洁高效。
  2. 查看详细网络信息:选择ip addrifconfig,可获取IP、子网掩码、MAC地址、接口状态等。
  3. NetworkManager管理环境:使用nmcli,适合动态配置和连接管理。
  4. 脚本自动化:推荐ip命令,输出结构化,便于脚本解析。

注意事项

  1. 权限问题:部分命令(如ifconfig的启用/禁用接口)需要sudo权限。
  2. 工具差异ifconfig在某些现代系统中可能已默认卸载,而ip命令是主流选择。
  3. 临时配置:通过ifconfigip添加的IP地址为临时配置,重启后会丢失;若需永久配置,需修改网络配置文件(如/etc/network/interfaces或NetworkManager连接文件)。

通过以上方法,可全面掌握Linux系统中查看IP地址的多种技巧,满足日常管理和运维需求,根据实际场景选择合适的工具,能更高效地完成网络配置与故障排查任务。

赞(0)
未经允许不得转载:好主机测评网 » Linux查看系统IP地址命令有哪些?新手必学技巧