如何高效使用 ip 命令?

在Linux系统中查看内网IP地址是网络配置和故障排查的基础操作,内网IP(通常指私有IP地址,如x.x.x16.x.x-172.31.x.x168.x.x)用于局域网内设备通信,以下是6种专业方法,适用于大多数Linux发行版(Ubuntu、CentOS、Debian等),按使用频率排序:
最现代且全面的工具,取代了老旧的ifconfig

ip addr show
  • 操作步骤
    1. 打开终端(Ctrl+Alt+T)。
    2. 输入命令后回车。
    3. 在输出中查找inet开头的行(IPv4地址),通常位于eth0(有线)或wlan0(无线)接口下。
    4. 内网IP格式为168.x.xx.x.x16.x.x

示例输出

2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    inet 192.168.1.105/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0
       valid_lft 86300sec preferred_lft 86300sec

📌 关键提示:/24表示子网掩码为255.255.0brd后是广播地址。


方法2:使用 ifconfig(传统方式)

兼容旧系统,但需安装net-tools包(新系统可能默认未安装):

ifconfig -a
  • 安装命令(如未预装):
    sudo apt install net-tools  # Debian/Ubuntu
    sudo yum install net-tools  # CentOS/RHEL
  • 在输出中查找inet行,忽略0.0.1(本地回环地址)。

方法3:通过 hostname 命令

快速查看主要IP(仅显示一个地址):

hostname -I

✅ 优势:直接列出所有非回环IP,无需筛选。


方法4:查看路由网关关联IP

适用于多网卡场景,显示当前活跃连接的IP:

ip route get 1 | awk '{print $7}'
  • 原理:通过向默认网关(1是简写)发送请求,提取响应使用的源IP。

方法5:解析 nmcli(NetworkManager用户)

图形界面用户适用,尤其适合桌面版Ubuntu/Fedora:

nmcli -p device show
  • 输出中查找IP4.ADDRESS[1]字段。

方法6:读取系统日志(备用方案)

当前方法失效时使用,查看启动时分配的IP:

dmesg | grep "IP"
  • 或检查DHCP日志:
    journalctl -u systemd-networkd | grep "eth0"  # 替换为你的网卡名

⚠️ 安全提示

  • 内网IP仅在局域网内有效,不可用于公网访问
  • 避免公开泄露内网IP,可能被用于内部网络探测。

总结建议

场景 推荐命令
大多数现代系统 ip addr show
快速获取IP hostname -I
多网卡/复杂路由 ip route get 1
旧系统兼容 ifconfig -a

若所有方法均无输出,可能原因:

  1. 网卡未启用 → 尝试 ip link set eth0 up(需root权限)
  2. 未连接网络 → 检查网线或WiFi
  3. DHCP故障 → 尝试静态IP配置

引用说明

  • 命令参考:Linux man手册(man ipman hostname
  • 网络标准:RFC 1918(私有IP地址分配)
  • 测试环境:Ubuntu 22.04 LTS, CentOS Stream 9, Linux Kernel 5.15+

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8172.html

(0)
酷番叔酷番叔
上一篇 2025年7月21日 05:42
下一篇 2025年7月21日 05:52

相关推荐

  • Linux内核如何轻松优化系统?

    普通用户如何与内核交互查看内核信息终端输入 uname -r 可查看当前内核版本(如 15.0-86-generic),使用 cat /proc/version 获取更详细的编译信息,内核模块管理加载/卸载模块: sudo modprobe <模块名> # 加载模块(如显卡驱动nouveau)sud……

    2025年8月9日
    9100
  • Linux中参数如何正确添加?

    在Linux系统中,参数添加是日常管理和运维中的核心操作,涉及命令行执行、环境配置、服务管理等多个场景,不同场景下的参数添加方法存在差异,需根据具体需求选择合适的方式,本文将详细解析Linux中常见参数添加的方法、场景及注意事项,命令行参数传递命令行参数是直接在命令后附加的选项或值,用于控制命令的执行行为,Li……

    2025年10月4日
    5200
  • Linux查看log日志文件的常用命令有哪些?

    在Linux系统中,日志文件是记录系统运行状态、应用程序行为、错误信息及安全事件的核心数据,通过查看日志可以快速定位故障、分析性能问题、追踪安全威胁,常见的日志文件存储在/var/log/目录下,如syslog(系统日志)、auth.log(认证日志)、kern.log(内核日志),以及各服务的专用日志(如ng……

    2025年10月3日
    5700
  • linux上如何关闭网站

    Linux上,可使用命令如systemctl stop nginx(针对Nginx)

    2025年8月14日
    9400
  • 虚拟机中linux如何全屏

    虚拟机中,可通过安装VMware Tools或调整虚拟机显示设置

    2025年8月17日
    9000

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信