Linux获取本地IP命令有哪些?

在Linux系统中,获取本地IP地址是日常运维和网络管理中常见的操作,本地IP地址通常指设备在局域网内(如以太网、Wi-Fi)的IP地址,而非公网IP,Linux提供了多种命令和方法来获取本地IP,每种方法适用于不同的场景和需求,以下将详细介绍几种常用的命令及其使用方法,包括命令格式、输出解析及适用场景。

linux 获取本地ip 命令
(图片来源网络,侵删)

使用 ip 命令获取本地IP

ip 命令是Linux系统中强大的网络配置工具,取代了传统的ifconfig命令,它可以显示和操作路由、网络设备、策略路由和隧道等。

基本语法

ip addr show

示例输出

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
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:1a:2b:3c:4d:5e 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

解析

  • lo 是回环接口,IP为0.0.1,用于本地通信。
  • eth0 是以太网接口,本地IP为168.1.100

提取本地IP的技巧

若需直接获取IPv4地址,可结合grepawk

ip addr show eth0 | grep "inet " | awk '{print $2}' | cut -d/ -f1

此命令会输出168.1.100

使用 ifconfig 命令获取本地IP

ifconfig是传统的网络配置工具,在部分Linux发行版中可能需要安装net-tools包。

linux 获取本地ip 命令
(图片来源网络,侵删)

基本语法

ifconfig

示例输出

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::21a:2bff:fe3c:4d5e  prefixlen 64  scopeid 0x20<link>
        ether 00:1a:2b:3c:4d:5e  txqueuelen 1000  (Ethernet)
        RX packets 12345  bytes 1234567 (1.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6789  bytes 987654 (964.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

提取本地IP的技巧

ifconfig eth0 | grep "inet " | awk '{print $2}'

输出结果为168.1.100

使用 hostname 命令获取本地IP

hostname命令通常用于显示或设置系统的主机名,但结合-I选项可快速获取所有本地IP地址。

基本语法

hostname -I

示例输出

168.1.100 10.0.0.1

此命令会输出所有活动的IPv4地址,空格分隔。

使用 nmcli 命令获取本地IP

nmcli是NetworkManager的命令行工具,适用于需要管理网络连接的场景。

linux 获取本地ip 命令
(图片来源网络,侵删)

基本语法

nmcli connection show | grep "eth0" | awk '{print $1}'
nmcli connection show eth0 | grep "ipv4.addresses"

示例输出

ipv4.addresses:                         192.168.1.100/24

使用 ssnetstat 命令获取监听IP

若需查看正在监听的端口和对应的IP地址,可使用ssnetstat

基本语法

ss -tuln | grep LISTEN

示例输出

tcp   LISTEN 0      128          192.168.1.100:22    0.0.0.0:*

不同命令的适用场景对比

命令优点缺点适用场景
ip功能强大,信息全面语法较复杂现代Linux发行版,网络调试
ifconfig简单直观,兼容旧系统逐渐被淘汰旧版Linux或需要兼容性的环境
hostname快速获取所有IP无法指定接口快速查看所有活动IP
nmcli适合网络连接管理依赖NetworkManager管理网络连接和配置
ss/netstat查看端口和监听IP需要结合其他命令提取IP网络服务调试

相关问答FAQs

Q1: 如何获取Linux系统的公网IP地址?
A1: 可通过访问外部服务获取公网IP,

curl ifconfig.me

或使用wget

wget -qO- ifconfig.me

这些命令会直接返回当前设备的公网IP地址。

Q2: 为什么ip addr show显示多个IP地址?
A2: Linux设备可能同时拥有多个IP地址,原因包括:

  • 配置了多个虚拟IP(alias)。
  • 使用了多个网络接口(如eth0、wlan0)。
  • 启用了IPv6地址(显示为inet6)。
    可通过指定接口(如ip addr show eth0)或过滤IPv4(grep "inet ")来精简输出。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/399186.html<

(0)
运维的头像运维
上一篇2025-10-14 10:57
下一篇 2025-10-14 11:02

相关推荐

  • Linux中rm命令如何安全删除文件?

    Linux中的rm命令是文件和目录管理中最常用也最危险的命令之一,其名称来源于“remove”(删除),在Linux系统中,删除操作通常是不可逆的,一旦使用rm命令删除文件或目录,默认情况下无法通过常规方式恢复,因此深入理解rm命令的用法、选项及安全注意事项至关重要,本文将详细介绍rm命令的基本语法、常用选项……

    2025-11-09
    0
  • aix rm命令如何安全删除文件?

    在aix系统中,rm命令是用于删除文件或目录的核心命令,其功能强大但操作风险较高,尤其在aix这种企业级操作系统中,误操作可能导致重要数据丢失,掌握rm命令的语法、选项及安全使用方法,是aix系统管理员必备的技能,以下从基本用法、选项解析、安全措施及实际应用场景等方面进行详细说明,rm命令的基本语法结构为rm……

    2025-10-15
    0
  • Linux系统如何查看IP地址命令?

    在Linux系统中查看IP地址是日常管理和运维中常见的操作,掌握多种命令可以帮助用户根据不同场景灵活选择,以下将详细介绍常用的查看IP命令及其使用方法、输出信息解析以及适用场景,最基础的命令是ifconfig,它属于net-tools工具包,在较早的Linux发行版中广泛使用,通过在终端输入ifconfig或i……

    2025-10-12
    0
  • 手机端如何开启邮箱imap服务器

    是手机端开启邮箱IMAP服务器的详细步骤指南,涵盖通用操作流程、常见邮箱示例及注意事项:前期准备与基础认知理解IMAP协议特性:IMAP(Internet Message Access Protocol)允许多设备同步邮件状态,包括已读/未读标记、文件夹结构等,适合需要跨终端管理邮件的用户,与POP3不同,它不……

    2025-08-14
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注