自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在 Linux 中如何從命令行查找默認(rèn)網(wǎng)關(guān)的 IP 地址

系統(tǒng) Linux
在本指南中,我們列出了在 Linux 和 Unix 系統(tǒng)中找到默認(rèn)網(wǎng)關(guān)的 5 種不同方法,我們還在每種方法中包含了顯示網(wǎng)關(guān)/路由器 IP 地址的示例命令。希望它對(duì)你有所幫助。

Linux 下查找網(wǎng)關(guān)或路由器 IP 地址的 5 種方法。

網(wǎng)關(guān) 是一個(gè)節(jié)點(diǎn)或一個(gè)路由器,當(dāng)連接到同一路由器時(shí),它允許兩個(gè)或多個(gè) IP 地址不同的主機(jī)相互通信。如果沒(méi)有網(wǎng)關(guān),它們將無(wú)法相互通信。換句話說(shuō),網(wǎng)關(guān)充當(dāng)接入點(diǎn),將網(wǎng)絡(luò)數(shù)據(jù)從本地網(wǎng)絡(luò)傳輸?shù)竭h(yuǎn)程網(wǎng)絡(luò)。在本指南中,我們將看到在 Linux 和 Unix 中從命令行找到默認(rèn)網(wǎng)關(guān)的所有可能方法。

在 Linux 中查找默認(rèn)網(wǎng)關(guān)

Linux 中有各種各樣的命令行工具可用于查看網(wǎng)關(guān) IP 地址。最常用的工具是:??ip???、??ss??? 和 ??netcat??。我們將通過(guò)示例了解如何使用每種工具查看默認(rèn)網(wǎng)關(guān)。

1、使用 ip 命令查找默認(rèn)網(wǎng)關(guān)

??ip?? 命令用于顯示和操作 Linux 中的路由、網(wǎng)絡(luò)設(shè)備、接口和隧道。

要查找默認(rèn)網(wǎng)關(guān)或路由器 IP 地址,只需運(yùn)行:

$ ip route

或者:

$ ip r

或者:

$ ip route show

示例輸出:

default via 192.168.1.101 dev eth0 proto static metric 100 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.20 metric 100

你從輸出中看到了 ??default via 192.168.1.101??? 這一行嗎?它就是默認(rèn)網(wǎng)關(guān)。我的默認(rèn)網(wǎng)關(guān)是 ??192.168.1.101??。

你可以使用 ??-4??? 參數(shù)只??顯示 IPv4 網(wǎng)關(guān)??:

$ ip -4 route

或者,使用 ??-6?? 參數(shù)只顯示 IPv6 網(wǎng)關(guān)

$ ip -6 route

如你所見(jiàn),IP 地址和子網(wǎng)詳細(xì)信息也一并顯示了。如果你想只顯示默認(rèn)網(wǎng)關(guān),排除所有其他細(xì)節(jié),可以使用 ??ip route??? 搭配 ??awk?? 命令,如下所示。

使用 ??ip route??? 和 ??awk?? 命令打印網(wǎng)關(guān)地址,執(zhí)行命令:

$ ip route | awk '/^default/{print $3}'

(LCTT 譯注:wsl1 上無(wú)輸出結(jié)果,正常 Linux 發(fā)行版無(wú)問(wèn)題)

或者:

$ ip route show default | awk '{print $3}'

這將只列出網(wǎng)關(guān) IP:

示例輸出:

192.168.1.101

使用 ip 命令列出默認(rèn)網(wǎng)關(guān)

你也可以使用 ??grep??? 命令配合 ??ip route?? 對(duì)默認(rèn)網(wǎng)關(guān)進(jìn)行過(guò)濾。

使用 ??ip route??? 和 ??grep?? 查找默認(rèn)網(wǎng)關(guān) IP 地址,執(zhí)行命令:

$ ip route | grep defaultdefault via 192.168.1.101 dev eth0 proto static metric 100

在最新的 Linux 發(fā)行版中,??ip route??? 是查找默認(rèn)網(wǎng)關(guān) IP 地址的推薦命令。然而,你們中的一些人可能仍然在使用傳統(tǒng)的工具,如 ??route??? 和 ??netstat???。舊習(xí)難改,對(duì)吧?下面的部分將介紹如何在 Linux 中使用 ??route??? 和 ??netstat?? 命令確定網(wǎng)關(guān)。

2、使用 route 命令顯示默認(rèn)網(wǎng)關(guān) IP 地址

??route?? 命令用于在較老的 Linux 發(fā)行版中顯示和操作路由表,如 RHEL 6、CentOS 6 等。

如果你正在使用較老的 Linux 發(fā)行版,你可以使用 ??route?? 命令來(lái)顯示默認(rèn)網(wǎng)關(guān)。

請(qǐng)注意,在最新的 Linux 發(fā)行版中,??route??? 工具已被棄用,??ip route??? 命令取而代之。如果你因?yàn)槟承┰蛉匀幌胧褂?nbsp;??route??,你需要安裝它。

首先,我們需要檢查哪個(gè)包提供了 ??route?? 命令。為此,在基于 RHEL 的系統(tǒng)上運(yùn)行以下命令:

$ dnf provides route

示例輸出:

net-tools-2.0-0.52.20160912git.el8.x86_64 : Basic networking toolsRepo        : @SystemMatched from:Filename    : /usr/sbin/routenet-tools-2.0-0.52.20160912git.el8.x86_64 : Basic networking toolsRepo        : baseosMatched from:Filename    : /usr/sbin/route

如你所見(jiàn),??net-tools??? 包提供了 ??route?? 命令。所以,讓我們使用以下命令來(lái)安裝它:

$ sudo dnf install net-tools

現(xiàn)在,運(yùn)行帶有 ??-n??? 參數(shù)的 ??route?? 命令來(lái)顯示 Linux 系統(tǒng)中的網(wǎng)關(guān)或路由器 IP 地址:

$ route -n

示例輸出:

Kernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         192.168.1.101   0.0.0.0         UG    100    0        0 eth0172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 eth0

使用 route 命令顯示默認(rèn)網(wǎng)關(guān) IP 地址

如你所見(jiàn),網(wǎng)關(guān) IP 地址是 192.168.1.101。你還將在 Flags 下面看到兩個(gè)字母 ??UG???。字母 ??U??? 代表接口是 “Up”(在運(yùn)行),??G?? 表示 “Gateway”(網(wǎng)關(guān))。

3、使用 netstat 命令查看網(wǎng)關(guān) IP 地址

??netstat??? 會(huì)輸出 Linux 網(wǎng)絡(luò)子系統(tǒng)的信息。使用 ??netstat?? 工具,我們可以在 Linux 和 Unix 系統(tǒng)中打印網(wǎng)絡(luò)連接、路由表、接口統(tǒng)計(jì)信息、偽裝連接和組播成員關(guān)系。

??netstat??? 是 ??net-tools?? 包的一部分,所以確保你已經(jīng)在 Linux 系統(tǒng)中安裝了它。使用以下命令在基于 RHEL 的系統(tǒng)中安裝它:

$ sudo dnf install net-tools

使用 netstat 命令打印默認(rèn)網(wǎng)關(guān) IP 地址:

$ netstat -rn

示例輸出:

Kernel IP routing tableDestination     Gateway         Genmask         Flags   MSS Window  irtt Iface0.0.0.0         192.168.1.101   0.0.0.0         UG        0 0          0 eth0172.17.0.0      0.0.0.0         255.255.0.0     U         0 0          0 docker0192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0

使用 netstat 命令查看網(wǎng)關(guān) IP 地址

??netstat??? 命令與 ??route??? 命令的輸出信息相同。如上輸出可知,網(wǎng)關(guān)的 IP 地址為 ??192.168.1.191???,??UG??? 表示網(wǎng)關(guān)連接的網(wǎng)卡是有效的,??G?? 表示網(wǎng)關(guān)。

請(qǐng)注意 ??netstat??? 也已棄用,建議使用 ??ss??? 命令代替 ??netstat??。

4、使用 routel 命令打印默認(rèn)網(wǎng)關(guān)或路由器 IP 地址

??routel??? 是一個(gè)腳本,它以一種漂亮格式的輸出路由。??routel??? 腳本的輸出讓一些人認(rèn)為比 ??ip route?? 列表更直觀。

??routel??? 腳本也是 ??net-tools?? 包的一部分。

打印默認(rèn)網(wǎng)關(guān)或路由器 IP 地址,不帶任何參數(shù)運(yùn)行 ??routel?? 腳本,如下所示:

$ routel

示例輸出:

target            gateway          source    proto    scope    dev tbl        default      192.168.1.101                   static            eth0     172.17.0.0/ 16                      172.17.0.1   kernel     linkdocker0    192.168.1.0/ 24                    192.168.1.20   kernel     link   eth0      127.0.0.0/ 8            local       127.0.0.1   kernel     host     lo local      127.0.0.1              local       127.0.0.1   kernel     host     lo local127.255.255.255          broadcast       127.0.0.1   kernel     link     lo local     172.17.0.1              local      172.17.0.1   kernel     hostdocker0 local 172.17.255.255          broadcast      172.17.0.1   kernel     linkdocker0 local   192.168.1.20              local    192.168.1.20   kernel     host   eth0 local  192.168.1.255          broadcast    192.168.1.20   kernel     link   eth0 local            ::1                                      kernel              lo             ::/ 96     unreachable                                       lo ::ffff:0.0.0.0/ 96     unreachable                                       lo     2002:a00::/ 24     unreachable                                       lo    2002:7f00::/ 24     unreachable                                       lo    2002:a9fe::/ 32     unreachable                                       lo    2002:ac10::/ 28     unreachable                                       lo    2002:c0a8::/ 32     unreachable                                       lo    2002:e000::/ 19     unreachable                                       lo    3ffe:ffff::/ 32     unreachable                                       lo         fe80::/ 64                                   kernel            eth0             ::1              local                   kernel              lo localfe80::d085:cff:fec7:c1c3              local                   kernel            eth0 local

使用 routel 命令打印默認(rèn)網(wǎng)關(guān)或路由器 IP 地址

只打印默認(rèn)網(wǎng)關(guān),和 ??grep?? 命令配合,如下所示:

$ routel | grep default        default      192.168.1.101                   static            eth0

5、從以太網(wǎng)配置文件中查找網(wǎng)關(guān)

如果你在 ??Linux 或 Unix 中配置了靜態(tài) IP 地址??,你可以通過(guò)查看網(wǎng)絡(luò)配置文件查看默認(rèn)網(wǎng)關(guān)或路由器 IP 地址。

在基于 RPM 的系統(tǒng)上,如 Fedora、RHEL、CentOS、AlmaLinux 和 Rocky Linux 等,網(wǎng)絡(luò)接口卡配置存儲(chǔ)在 ??/etc/sysconfig/network-scripts/?? 目錄下。

查找網(wǎng)卡的名稱:

# ip link show

示例輸出:

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:002: eth0@if5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000    link/ether d2:85:0c:c7:c1:c3 brd ff:ff:ff:ff:ff:ff link-netnsid 0

網(wǎng)卡名為 ??eth0??。所以讓我們打開(kāi)這個(gè)網(wǎng)卡文件的網(wǎng)卡配置:

# cat /etc/sysconfig/network-scripts/ifcfg-eth0

示例輸出:

DEVICE=eth0ONBOOT=yesUUID=eb6b6a7c-37f5-11ed-a59a-a0e70bdf3dfbBOOTPROTO=noneIPADDR=192.168.1.20NETMASK=255.255.255.0GATEWAY=192.168.1.101DNS1=8.8.8.8

如你所見(jiàn),網(wǎng)關(guān) IP 為 ??192.168.1.101??。

在 Debian、Ubuntu 及其衍生版中,所有的網(wǎng)絡(luò)配置文件都存儲(chǔ)在 ??/etc/network?? 目錄下。

$ cat /etc/network/interfaces

示例輸出:

auto ens18iface ens18 inet static        address 192.168.1.150        netmask 255.255.255.0        gateway 192.168.1.101        dns-nameservers 8.8.8.8

請(qǐng)注意,此方法僅在手動(dòng)配置 IP 地址時(shí)有效。對(duì)于啟用 DHCP 的網(wǎng)絡(luò),需要按照前面的 4 種方法操作。

總結(jié)

在本指南中,我們列出了在 Linux 和 Unix 系統(tǒng)中找到默認(rèn)網(wǎng)關(guān)的 5 種不同方法,我們還在每種方法中包含了顯示網(wǎng)關(guān)/路由器 IP 地址的示例命令。希望它對(duì)你有所幫助。

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2019-07-15 05:50:19

Linux命令行VirtualBox版

2022-10-14 19:30:29

Linux

2016-12-15 08:30:02

Linux命令

2022-10-13 19:23:21

Linux命令行IP 地址

2009-08-11 10:10:05

Linux命令行修改ILinux命令行Linux命令

2022-10-25 13:01:36

Linux命令行空目錄

2012-02-08 16:37:36

ibmdw

2020-12-06 08:00:46

scanimage命令行Linux

2019-08-27 08:00:10

OpenStack命令虛擬機(jī)

2014-10-22 12:03:14

Linux嗅探HTTP

2018-06-19 16:05:27

LinuxStratis存儲(chǔ)

2022-04-11 06:03:24

FdupesLinux命令行工具

2022-11-18 14:42:24

Linux默認(rèn)網(wǎng)關(guān)

2019-12-03 09:00:48

LinuxIP地址命令

2022-03-04 14:32:01

命令行IP 地址Linux

2017-08-29 15:15:40

Linux命令公網(wǎng)IP

2009-08-04 10:06:37

如何進(jìn)入linux命令linux系統(tǒng)linux

2021-07-12 14:53:27

LinuxGmail電子郵件

2009-08-11 10:16:08

linux命令行修改Ired hat linlinux命令行參數(shù)

2019-01-22 13:46:01

LinuxUnix系統(tǒng)命令行
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)