Linux如何查看服务器IP地址?

在Linux系统中,查询服务器地址是日常运维和网络管理中的常见需求,服务器地址可能包含本地IP地址IPv4/IPv6)、公网IP地址、MAC地址、主机名、域名解析信息等,掌握多种查询方法可以帮助运维人员快速定位问题、配置服务或排查网络故障,以下从不同维度详细介绍Linux系统中查询服务器地址的常用命令及具体操作。

linux如何查服务器地址

查询本地IP地址(IPv4/IPv6)

本地IP地址是服务器在局域网或内网中的标识,分为IPv4和IPv6两种类型,可通过以下命令查询:

使用ip addr命令(推荐)

ip addriproute2工具包中的命令,功能强大且现代Linux系统默认安装,可查看所有网络接口的IP地址、子网掩码、MAC地址等信息。

ip addr show

执行后输出类似以下内容(以eth0接口为例):

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 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
    inet6 fe80::21a:2bff:fe3c:4d5e/64 scope link
       valid_lft forever preferred_lft forever
  • IPv4地址inet字段后168.1.100/24,其中168.1.100是IP地址,/24表示子网掩码(255.255.255.0)。
  • IPv6地址inet6字段后的地址,如fe80::21a:2bff:fe3c:4d5e/64
    若需查看特定接口(如eth0),可加接口名:ip addr show eth0

使用ifconfig命令(需安装net-tools)

ifconfig是传统网络配置工具,部分系统(如CentOS 7之前)默认安装,新版本可能需手动安装(yum install net-toolsapt install net-tools)。

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 23456  bytes 2345678 (2.2 MiB)
        TX errors 0  dropped 0  overruns 0  carrier 0  collisions 0
  • inet后为IPv4地址,netmask为子网掩码,ether为MAC地址。

使用hostname -I命令(仅IPv4)

该命令可快速显示所有接口的IPv4地址,空格分隔:

hostname -I

输出示例:168.1.100 10.0.0.1(多网卡服务器会显示多个IP)。

查询公网IP地址

公网IP是服务器在互联网中的唯一标识,需通过访问外部服务或第三方接口查询,常用方法如下:

使用curl调用第三方接口

curl是常用的网络工具,可通过访问第三方API获取公网IP:

linux如何查服务器地址

curl ifconfig.me  # 或 curl ipinfo.io/ip

输出示例:45.67.89(直接显示公网IPv4地址)。
若需查询IPv6公网地址,可使用:

curl ipv6.icanhazip.com

使用wget查询

curl类似,wget也可通过第三方接口获取公网IP:

wget -qO- ifconfig.me

查询MAC地址

MAC地址是网卡的物理地址,由48位十六进制数组成,可通过以下命令查询:

使用ip addr命令

ip addr show的输出中,link/ether字段后的值即为MAC地址(如前文示例中的00:1a:2b:3c:4d:5e)。

使用ip link命令

ip link show

输出示例:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:1a:2b:3c:4d:5e brd ff:ff:ff:ff:ff:ff
  • link/ether后为MAC地址。

查询主机名与域名解析信息

主机名是服务器在局域网中的名称,域名解析则是将域名映射到IP地址的过程,查询方法如下:

查询主机名

hostname  # 显示短主机名
hostname -f  # 显示完整域名(FQDN,如server.example.com)
hostname -A  # 显示所有主机名别名

主机名配置文件位于/etc/hostname,可通过cat /etc/hostname查看。

域名解析查询

(1)使用nslookup命令

nslookup可查询域名对应的IP或IP对应的域名(反向解析),需安装bind-utils(CentOS/RHEL)或dnsutils(Ubuntu/Debian)。

  • 查询域名IP:
    nslookup example.com

    输出示例:

    linux如何查服务器地址

    Name:    example.com
    Address: 93.184.216.34
    Name:    example.com
    Address: 2606:2800:220:1:248:1893:25c8:1946
  • 反向查询IP对应的域名:
    nslookup 93.184.216.34

(2)使用dig命令(更详细)

dig提供更详细的DNS解析信息,包括权威服务器、TTL值等:

dig example.com

输出示例(部分):

; <<>> DiG 9.11.3-1ubuntu1.17-Ubuntu <<>> example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12345
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; QUESTION SECTION:
;example.com.                    IN      A
;; ANSWER SECTION:
example.com.             604800  IN      A       93.184.216.34

查询网络接口与路由信息

查看网络接口状态

ip link show  # 显示所有接口状态(UP/DOWN)

输出示例:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:1a:2b:3c:4d:5e brd ff:ff:ff:ff:ff:ff
  • state UP表示接口已启用,DOWN表示禁用。

查看路由表(默认网关等)

ip route show

输出示例:

default via 192.168.1.1 dev eth0 proto dhcp src 192.168.1.100 metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100 metric 100
  • default via 192.168.1.1 dev eth0表示默认网关为168.1.1,通过eth0接口访问。

Linux服务器地址查询命令速查表

命令 功能描述 常用选项/示例
ip addr show 查看所有接口IP及MAC地址 ip addr show eth0(指定接口)
ifconfig 查看网络接口信息(需安装net-tools) ifconfig eth0
hostname -I 快速显示所有IPv4地址
curl ifconfig.me 获取公网IPv4地址 curl ipv6.icanhazip.com(IPv6)
ip link show 查看网络接口状态及MAC地址
nslookup example.com 查询域名对应的IP或反向解析 nslookup 93.184.216.34(反向查询)
dig example.com 详细DNS解析信息 dig +short example.com(仅返回IP)
ip route show 查看路由表(默认网关等)

相关问答FAQs

Q1: 如何区分本机的公网IP和私网IP?
A: 私网IP是局域网内部使用的地址,无法直接访问互联网,范围包括:

  • 0.0.0/8(10.0.0.0-10.255.255.255)
  • 16.0.0/12(172.16.0.0-172.31.255.255)
  • 168.0.0/16(192.168.0.0-192.168.255.255)
    公网IP是互联网服务提供商(ISP)分配的,可直接访问互联网,可通过curl ifconfig.me等第三方接口查询,登录路由器管理界面(通常为192.168.1.1或192.168.0.1)也可查看WAN口公网IP。

Q2: 为什么使用nslookup查询域名时返回多个IP地址?
A: DNS负载均衡(Load Balancing)是常见原因,为了提高服务可用性和性能,同一个域名可能对应多个服务器IP地址,DNS服务器会根据轮询(Round Robin)、地理位置或负载情况返回不同的IP给客户端,访问大型网站时,不同地区用户可能解析到不同的CDN节点IP,从而实现就近访问,故障转移(Failover)场景下,主服务器IP和备用服务器IP也可能同时绑定同一域名。

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

(0)
酷番叔酷番叔
上一篇 2025年10月7日 13:24
下一篇 2025年10月7日 13:43

相关推荐

  • linux如何卸载clion

    Linux系统中,卸载CLion可通过包管理器(如apt、yum等)或直接删除

    2025年8月19日
    2600
  • Arch Linux如何打开终端?

    在Arch Linux系统中,终端(Terminal)是与系统交互的核心工具,无论是命令操作、软件安装还是系统管理,都离不开终端的使用,掌握多种打开终端的方法,能根据不同场景灵活提升操作效率,以下是Arch Linux中打开终端的详细方法,涵盖图形界面、命令行及快捷操作等多种途径,通过图形界面应用程序菜单打开如……

    2025年9月23日
    2100
  • Linux系统如何禁用独立显卡驱动?

    在Linux系统中,禁用显卡驱动的场景通常包括更换驱动类型(如从NVIDIA闭源驱动切换至开源驱动)、解决驱动冲突、使用核显或虚拟机等需求,不同显卡驱动(如NVIDIA、AMD、Intel)的禁用方法存在差异,需根据具体驱动类型采取对应操作,同时需注意配置文件的修改和系统更新,确保禁用后系统仍能正常运行,禁用不……

    2025年9月10日
    2100
  • Windows系统中如何具体实现FTP登录Linux服务器的详细操作步骤?

    在Windows系统中通过FTP协议登录Linux服务器进行文件传输是常见的跨平台操作需求,广泛应用于服务器管理、文件备份、数据共享等场景,FTP(File Transfer Protocol)是一种基于TCP/IP协议的应用层协议,支持客户端与服务器之间的文件上传、下载、删除等操作,本文将详细介绍从Windo……

    2025年9月29日
    1300
  • linux下如何重启网络连接网络

    Linux 下,可通过命令 sudo systemctl restart NetworkManager

    2025年8月15日
    2500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信