当前位置: 首页>>技术问答>>正文


如何查找网络IP地址,网络掩码和网关信息?

, ,

问题描述

我正试图让我的IP地址保持静态,因为我听到它修复了缓慢的浏览问题。

当我点击灰色任务栏的网络菜单下的连接信息时,它会告诉我IP地址,子网掩码和DNS,但没有关于网关的信息。

我想知道是否有终端命令来查找信息。

最佳解决方法

我有这个命令作为”ipconfig”的别名(最多14.04):

nmcli dev list iface eth0 | grep IP4

示例列表是:

IP4-SETTINGS.ADDRESS:                   192.168.1.110
IP4-SETTINGS.PREFIX:                    24 (255.255.255.0)
IP4-SETTINGS.GATEWAY:                   192.168.1.1
IP4-DNS1.DNS:                           208.67.222.222
IP4-DNS2.DNS:                           208.67.220.220

如果eth0不起作用,您可能需要使用eth1eth2 ……,具体取决于您的配置。

编辑:2/8/16

请注意,这仅适用于v15.04之前的版本(或者可能在v14.10之前;我有v14.04)。对于较新的版本,您可以使用:

 nmcli dev show eth0

次佳解决方法

您可以使用ifconfig,它将显示您的inet地址(IP)和掩码。

对于网关,发出ip route命令并记下默认路由。

networking,info,ubuntu

希望这可以帮到你。

第三种解决方法

This website解释了如何通过网络掩码和计算机的IP地址计算networkbroadcast地址。为简化该文章:network是网络掩码遗留的IP地址范围内的最低可能地址。 broadcast是该范围内编号最高的IP地址。 “网络掩码遗留的IP地址范围”称为本地网络。

“The network”通常意味着您以上的所有人,包括互联网。要访问”the network”,使用network地址。实际上,大多数人都使用可以互相通信的以太网电缆来调用”the network”。

示例:您的ISP为您提供输入无线路由器的信息:99.1.81.209的静态IP地址,您的网络掩码为255.255.255.224。现在您想要设置一个ubuntu防火墙并需要设置您的公共接口:

Calculate network IP address:
255.255.255.224 -> last octet = E0
 99.  1. 81.209 -> last octet = D1
Logical AND the mask and your ip: 
E0 & D1 = C0 = 192
--> network = 99.1.81.192

Calculate broadcast address:
255.255.255.224 : E0 -> there are 1F = 31,
-> broadcast = 99.1.81.192 + .31 = 99.1.81.223

另一种方法…

Calculate broadcast address:
255.255.255.224 -> last octet = E0
 99.  1. 81.209 -> last octet = D1
Hosts' IPs = 1F 
Logical OR the hosts ips with your ip:
1F | D6 = DF = 223 
--> broadcast = 99.1.81.223

通常,您会看到用/描述的网络。这是这个网络:

255.255.255.224 is the netmask, add up the "1" bits:
 8 + 8 + 8 + 3  = 27
so "this network" gets /27 notation
and can be described as 99.1.81.192/27

第四种方法

在15.04之前的版本中,曾经存在nm-tool实用程序。

来自man nm-tool


NAME
       nm-tool - utility to report NetworkManager state and devices

SYNOPSIS
       nm-tool

DESCRIPTION
       The nm-tool utility provides information about NetworkManager, device, and wireless networks.

这个小实用程序可以很好地与网络管理器连接,并生成一个报告,其中包含每行的相应信息,这对于使用文本处理实用程序进行解析非常简单。样本输出:

$ nm-tool | sed -ne '/^  *IPv4/,/^$/p'
  IPv4 Settings:
    Address:         192.168.42.178
    Prefix:          24 (255.255.255.0)
    Gateway:         192.168.42.129

关于相关问题的Rinzwind’s answer引用了针对Network Manager软件包的changelog,它解释了它已经被上游删除并被nmcli取代。然而,应该注意的是,15.04之前和之后的nmcli与几个命令行论点不同。这是上面的替代方案:

$ nmcli dev show | grep 'IP4\.ADDRESS\|IP4.GATEWAY'
IP4.ADDRESS[1]:                         192.168.0.101/24
IP4.GATEWAY:                            192.168.0.1
IP4.ADDRESS[1]:                         127.0.0.1/8
IP4.GATEWAY:                            --

使用nmcli根据每个接口显示信息,即一个接口有一组行,然后用空行分隔另一组行等等。

可以使用的另一种替代方案是ip命令,这对于ifconfig来说是优选的。根据pilona’sGilles’sDifference between ‘ifconfig’ and ‘ip’ commands的回答,Linux内核和网络功能已向前发展,但ifconfig及其所属的软件包在很长一段时间内都没有发展,这就是我们拥有ip实用程序的原因。要获取特定接口的寻址信息,可以使用ip -o -4 addrip route可用于获取路由/网关信息。

第五种方法

nm-tool也将完成这项工作。

$ nm-tool
NetworkManager Tool

State: connected (global)

....

  IPv4 Settings:
    Address:         192.168.1.110
    Prefix:          24 (255.255.255.0)
    Gateway:         192.168.1.1

    DNS:             208.67.222.222
    DNS:             208.67.220.220

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/2379.html,未经允许,请勿转载。