原文:https://www.cnblogs.com/qianpangzi/p/10563979.html

查看ubuntu系统当前的可用的网络接口。方法如下

-----------------------------------------------------------------------------------------

在我们安装完一个 Linux 系统后最为常见的任务便是网络配置了。当然,你可以在安装系统时进行网络接口的配置。但是,对于某些人来说,他们更偏爱在安装完系统后再进行网络的配置或者更改现存的设置。众所周知,为了在命令行中进行网络设定的配置,我们首先必须知道系统中有多少个可用的网络接口。本次这个简单的指南将列出所有可能的方式来在 Linux 和 Unix 操作系统中找到可用的网络接口。

在 Linux 中找到可用的网络接口

我们可以使用下面的这些方法来找到可用的网络接口。

方法 1 使用 ifconfig 命令

使用 ifconfig 命令来查看网络接口仍然是最常使用的方法。我相信还有很多 Linux 用户仍然使用这个方法。

$ ifconfig -a

示例输出:

enp5s0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 24:b6:fd:37:8b:29 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 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 171420 bytes 303980988 (289.8 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 171420 bytes 303980988 (289.8 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlp9s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.225.37 netmask 255.255.255.0 broadcast 192.168.225.255
inet6 2409:4072:6183:c604:c218:85ff:fe50:474f prefixlen 64 scopeid 0x0<global>
inet6 fe80::c218:85ff:fe50:474f prefixlen 64 scopeid 0x20<link>
ether c0:18:85:50:47:4f txqueuelen 1000 (Ethernet)
RX packets 564574 bytes 628671925 (599.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 299706 bytes 60535732 (57.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

如上面的输出所示,在我的 Linux 机器上有两个网络接口,它们分别叫做 enp5s0(主板上的有线网卡)和 wlp9s0(无线网卡)。其中的 lo 是环回网卡,被用来访问本地的网络的服务,通常它的 IP 地址为 127.0.0.1

我们也可以在许多 UNIX 变种例如 FreeBSD 中使用相同的 ifconfig 来列出可用的网卡。

方法 2 使用 ip 命令

在最新的 Linux 版本中, ifconfig 命令已经被弃用了。你可以使用 ip 命令来罗列出网络接口,正如下面这样:

$ 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:00
2: enp5s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 24:b6:fd:37:8b:29 brd ff:ff:ff:ff:ff:ff
3: wlp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000
link/ether c0:18:85:50:47:4f brd ff:ff:ff:ff:ff:ff

你也可以使用下面的命令来查看。

$ ip addr
$ ip -s link

你注意到了吗?这些命令同时还显示出了已经连接的网络接口的状态。假如你仔细查看上面的输出,你将注意到我的有线网卡并没有跟网络线缆连接(从上面输出中的 DOWN 可以看出)。另外,我的无线网卡已经连接了(从上面输出中的 UP 可以看出)。想知晓更多的细节,可以查看我们先前的指南 在 Linux 中查看网络接口的已连接状态

这两个命令(ifconfig 和 ip)已经足够在你的 LInux 系统中查看可用的网卡了。

然而,仍然有其他方法来列出 Linux 中的网络接口,下面我们接着看。

方法 3 使用 /sys/class/net 目录

Linux 内核将网络接口的详细信息保存在 /sys/class/net 目录中,你可以通过查看这个目录的内容来检验可用接口的列表是否和前面的结果相符。

$ ls /sys/class/net

示例输出:

enp5s0 lo wlp9s0

方法 4 使用 /proc/net/dev 目录

在 Linux 操作系统中,文件 /proc/net/dev 中包含有关网络接口的信息。

要查看可用的网卡,只需使用下面的命令来查看上面文件的内容:

$ cat /proc/net/dev

示例输出:

Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
wlp9s0: 629189631 566078 0 0 0 0 0 0 60822472 300922 0 0 0 0 0 0
enp5s0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
lo: 303980988 171420 0 0 0 0 0 0 303980988 171420 0 0 0 0 0 0

方法 5 使用 netstat 命令

netstat 命令可以列出各种不同的信息,例如网络连接、路由表、接口统计信息、伪装连接和多播成员等。

$ netstat -i

示例输出:

Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
lo 65536 171420 0 0 0 171420 0 0 0 LRU
wlp9s0 1500 565625 0 0 0 300543 0 0 0 BMRU

请注意 netstat 被弃用了, netstat -i 的替代命令是 ip -s link。另外需要注意的是这个方法将只列出激活的接口,而不是所有可用的接口。

方法 6 使用 nmcli 命令

nmcli 是一个用来控制 NetworkManager 和报告网络状态的命令行工具。它可以被用来创建、展示、编辑、删除、激活、停用网络连接和展示网络状态。

假如你的 Linux 系统中安装了 NetworkManager,你便可以使用下面的命令来使用 nmcli 列出可以的网络接口:

$ nmcli device status

或者

$ nmcli connection show

现在你知道了如何在 Linux 中找到可用网络接口的方法

假如你知道其他快捷的方法来在 Linux 中找到可用的网络接口,请在下面的评论部分中分享出来,我将检查你们的评论并更新这篇指南。

 

【转】如何在 Linux 中查看可用的网络接口的更多相关文章

  1. 如何在 Linux 中查看可用的网络接口

    在我们安装完一个 Linux 系统后最为常见的任务便是网络配置了.当然,你可以在安装系统时进行网络接口的配置.但是,对于某些人来说,他们更偏爱在安装完系统后再进行网络的配置或者更改现存的设置.众所周知 ...

  2. Linux 中查看可用的网络接口

    目录 Linux 中查看可用的网络接口 在 Linux 中找到可用的网络接口 title: Linux 中查看可用的网络接口 date: 2020/2/25 16:56:36 toc: true -- ...

  3. 如何在 Linux 中查看进程占用的端口号【转】

    对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的.如果你需要处理端口相关的问题,这篇文章可能会对你有用. 端口是 Linux 系统上特定进程之间逻辑连接的标识, ...

  4. 如何在Linux中查看所有正在运行的进程

    如何在Linux中查看所有正在运行的进程 FROM:http://os.51cto.com/art/201101/244090.htm 进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系 ...

  5. linux中查看nginx、apache、php、mysql配置文件路径的方法

    如何在Linux中查看nginx.apache.PHP.MySQL配置文件路径了,如果你接收一个别人配置过的环境,但没留下相关文档.这时该怎么判断找到正确的加载文件路径了.可以通过以下来判断1.判断a ...

  6. linux中查看nginx、apache、php、mysql配置文件路径

    linux高效.稳定,但是也带来维护上的一些问题.配置文件究竟在哪里????? 如何在linux中查看nginx.apache.php.mysql配置文件路径了,如果你接收一个别人配置过的环境,但没留 ...

  7. procps工具集 ----Linux中的可用内存指的是什么?

    https://gitlab.com/procps-ng/procps free - Report the amount of free and used memory in the system k ...

  8. 如何在Linux中使用Firejail运行应用程序

    有时您可能希望使用在不同环境中未经过良好测试的应用程序,但您必须使用它们.在这种情况下,关注系统的安全性是正常的.在Linux中可以做的一件事是在沙箱中使用应用程序. “沙盒”是在有限环境中运行应用程 ...

  9. 如何在Linux中tomcat下运行一个web项目

    如何在Linux中tomcat下运行一个web项目 然后启动Tomcat项目.运行的运行后会自动将war包解压. 如果页面报404,那么请查看tomcat日志文件,它一定是报错了....

随机推荐

  1. 本地项目git初始化并提交远程仓库

    1.先在远程仓库(如github)创建项目,为了避免错误,不要初始化 README, license, 或者gitignore文件 . 2.打开Terminal终端 3.切换到你的本地项目目录 4.初 ...

  2. Docker底层基石namespace与cgroup

    Docker底层基石namespace与cgroup   容器本质上是把系统中为同一个业务目标服务的相关进程合成一组,放在一个叫做namespace的空间中,同一个namespace中的进程能够互相通 ...

  3. python的值传递与引用传递

    首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传 ...

  4. pyenv和pipenv简单使用

    一.安装pyenv 安装pyenv $ git clone git://github.com/yyuu/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT=&qu ...

  5. c# 数据请求方式提供

    营销平台数据请求介绍 项目介绍: 前端使用 WPF,采用MVVM模式  后端数据库采用的sqlite 依靠本地化运行   后期可能会采用WebApi   因为WPF都是自学的 所以 代码方面写的可能不 ...

  6. OpenMark

    what's open mark??? http://www.open.ac.uk/openmarkexamples/

  7. Remote Desktop突然不能用了 “This could be due to CredSSP encryption oracle remediation”

    一段时间没有用RDP去连远程的Windows主机,某一天突然发现用不了了. 错误信息如下: An authentication error has occurred. The function req ...

  8. centos7修改宝塔面板端口6666无法访问

    相信你看到我这篇随笔的时候已经查阅了不少资料了吧 先看看我和我朋友的对话吧 原因,想修改宝塔默认面板端口8888为6666,用的阿里云服务器,并且在安全组添加了6666端口 然后无法访问,想到linu ...

  9. 使用scrapy框架做武林中文网的爬虫

    一.安装 首先scrapy的安装之前需要安装这个模块:wheel.lxml.Twisted.pywin32,最后在安装scrapy pip install wheel pip install lxml ...

  10. Java学习:JDBC快速入门

    本节类容 JDBC基本概念 快速入门 JDBC基本概念 概念: Java DataBase Connectivity Java 数据库连接,Java语言操作数据库 JDBC本质: 其实是官方(sun公 ...