ip查看Linux系统下的IP地址

1. Linux系统下查看IP地址的命令

在Linux系统中,我们可以使用一些命令来查看当前主机的IP地址。下面将介绍几个常用的命令。

1.1 ifconfig命令

ifconfig命令用于显示或配置网络设备的信息,包括IP地址、网络掩码、网络接口等。

ifconfig

如果没有任何参数,直接运行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

ether 00:1c:c0:ae:9a:3b txqueuelen 1000 (Ethernet)

RX packets 0 bytes 0 (0.0 B)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 0 bytes 0 (0.0 B)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

在上面的输出中,我们可以看到eth0是一个网络接口,它的IP地址是192.168.1.100,子网掩码是255.255.255.0。

1.2 ip命令

ip命令是Linux系统中最常用的用于配置网络的命令行工具,它可以查看和设置网络接口的信息。

ip address

执行以上命令可以显示当前所有网络接口及其IP地址。例如:

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

3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

link/ether 00:1c:c0:ae:9a:3b brd ff:ff:ff:ff:ff:ff

inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic eth0

valid_lft 76499sec preferred_lft 76499sec

在上面的输出中,可以看到lo是回环接口,它的IP地址是127.0.0.1。eth0是一个物理接口,它的IP地址是192.168.1.100。

1.3 hostname命令

hostname命令用于显示或设置系统的主机名。

hostname -I

执行以上命令可以显示当前主机的IP地址。例如:

192.168.1.100

上述命令会返回主机的IP地址,如果系统有多个IP地址,将以空格分隔。

2. 使用Shell脚本截取IP地址

如果我们希望将IP地址保存到一个变量中,以便在Shell脚本中使用,可以通过一些命令和工具实现。

2.1 使用ifconfig命令截取IP地址

ifconfig命令输出的信息是一段文本,我们可以通过字符串操作截取其中的IP地址。

ip=\$(ifconfig eth0 | grep 'inet ' | awk '{print $2}')

echo "The IP address is: \$ip"

以上代码将会返回eth0接口的IP地址,并打印在屏幕上。

2.2 使用ip命令截取IP地址

ip命令输出的信息也是一段文本,我们可以通过字符串操作截取其中的IP地址。

ip=\$(ip address show dev eth0 | grep 'inet ' | awk '{print $2}')

echo "The IP address is: \$ip"

以上代码将会返回eth0接口的IP地址,并打印在屏幕上。

3. Python脚本查看IP地址

除了使用Shell脚本,我们还可以使用Python脚本来查看IP地址。

3.1 使用socket库

import socket

hostname = socket.gethostname()

ip = socket.gethostbyname(hostname)

print("Hostname:", hostname)

print("IP Address:", ip)

以上代码使用socket库中的gethostname和gethostbyname函数来分别获取主机名和IP地址,并打印在屏幕上。

3.2 使用subprocess库

import subprocess

result = subprocess.run(["hostname", "-I"], capture_output=True, text=True)

ip = result.stdout.strip()

print("IP Address:", ip)

以上代码使用subprocess库中的run函数来执行命令"hostname -I",并将命令的输出截取为变量ip,并打印在屏幕上。

总结

本文介绍了在Linux系统下查看IP地址的几个常用命令,并给出了Shell脚本和Python脚本的示例,可以实现获取IP地址的功能。通过这些命令和脚本,我们可以方便地获取当前系统的IP地址,以便在网络配置或程序开发中使用。

操作系统标签