Linux下利用ifconfig命令查看和操纵网络接口
为了说明这个问题,首先我们需要解释一下在Linux系统下“网络接口”的含义。通俗来讲,Linux中的所谓网络接口就是指本机的网卡,它相当于计算机的一台负责对网络进行收发数据的外设。
如何在Linux系统下进行查看和操纵网络接口呢?查看和操纵网络接口,使用的都是同一个命令——ifconfig。
操纵网络接口,具体包括启动,关闭和临时修改网络接口参数。
在Linux下,所有的用户都可以使用ifconfig命令来查看网络接口,但是只有根用户才可以使用ifconfig操纵网络接口。
在使用ifconfig命令之前,必须先安装Linux网络包。安装方法为在shell中键入sudo apt install net-tools.
首先,我们来查看一下所有已开启的网络接口。(再次提醒,是已开启的网络接口,而不是所有的)
只要在shell中直接键入ifconfig即可。

其中,第一个ens33就表示网络接口的名字。
一般来讲,本机的第一个以太网网络接口的接口名为eth0.如果本机中有多个接口,则它们的名字会按照数字的顺序依次排列命名下去。
而本机的网络接口是本机的VMWare虚拟机网络接口,因此名字默认为ens33.
目前本机中只有一个已开启的网络接口。其余部分则显示了该网络接口的状态。
第一行的flags=4163<UP,BROADCAST,RUNNING,MULTICAST> MTU 1500 则表明该网络接口的运行状态,为:已经启用,支持广播和组播,MTU被设置为1500默认值。
第二行表明该网络接口的IPv4地址,本网络的子网掩码及本网络的广播地址。
第三行表明该网络接口的IPv6地址,prefixlen表示该地址的掩码长度,scopeid 0x20<link>表明,该网络接口的作用域仅该接口有效。
第四行表示该网络接口的MAC地址,txqueuelen表示传输队列长度为1000B,并表明该网络接口运行的环境为以太网。
第五行和第六行分别表示该网络接口接收的报文个数453,总字节数481.5KB,错误报文数,丢弃报文数,溢出报文数,冲突帧数。
第七行和第八行表示的是该网络接口发送的报文情况,具体含义和第五行与第六行相同。
对于下方的lo网络接口。lo叫做回环接口,它并不是一个真正的网络接口,它是一个特殊的,模拟出来的网络接口,每个系统都具有这样的一个接口,其IP地址永远为127.0.0.1,子网掩码为255.0.0.0.
回环接口为系统提供一个单机的网络环境,一般用于网络程序的调试。许多程序的运行也需要这个接口。我们一般不会去配置这个接口。
可以在ifconfig命令后加上一个具体的网络接口的名字来查看一个由用户指定的网络接口的信息。
如果网络接口因为一些其他原因没有启动,那么就无法在ifconfig命令的输出中查看其状态了。此时,可以在ifconfig命令后加入-a选项,以查看本机中所有网络接口的状态,无论其是否开启,是否被配置好。
使用ifconfig -a命令后可能出现的情况有三种:
一,仍然没有看到接口,那么说明网卡硬件连接或者驱动出现了问题,导致系统无法识别此网卡了,此时应该检查硬件或者重新安装驱动,如果仍然无法识别,则应该考虑更换网卡。
二,看到接口了,但是输出中没有Inet address,broadcast,mask等参数出现,那就说明网卡硬件没有问题,是接口没有配置好,此时应该查看并编辑相关配置文件,对接口进行配置。
三,看到接口了,并且接口一切正常,那么就是接口未开启。可以使用ifconfig 接口名 up命令来开启接口。(up对应down,表示关闭接口)
如果要临时改变网络接口的配置参数,也可以使用ifconfig命令:
如设置eth0接口的地址为172.168.19.54的命令为:
ifconfig eth0 172.168.19.54 255.255.255.0
因为这个IP地址对应的子网掩码为24位1+8位0.
再比如,设置该网络接口的MTU值的命令为:
ifconfig eth0 mtu 你想设置的值
注意:
1.ifconfig命令修改网络接口参数,只能由root用户完成;
2.ifconfig命令修改网络接口参数是临时的,一旦系统重启,或者网络重启,这些修改将会失效;
3.在远程连接主机时,不要轻易改动网络参数,否则很有可能导致掉线。
Linux下利用ifconfig命令查看和操纵网络接口的更多相关文章
- Linux故障:linux中使用ifconfig命令查看网卡信息时显示为eth1,但是在network-scripts中只有ifcfg-eth0的配置文件,并且里面的NAME="eth0"。
linux中使用ifconfig命令查看网卡信息时显示为eth1,但是在network-scripts中只有ifcfg-eth0的配置文件,并且里面的NAME="eth0". ...
- Linux下利用script命令录制并回放终端会话
Linux下利用script命令录制并回放终端会话 核心命令 script 和 scriptreplay 录制屏幕 script -t 2>timescript typescript 命令解释: ...
- Linux下使用date命令查看和修改时间
1.查看系统时区和时间,执行命令date -R “-0500”代表西五区(America/New_York),北京的时区为“+0800”(东八区). 2.查看硬件时间,执行命令hwclock --sh ...
- Linux下利用nc命令来监控检测服务器的端口使用情况(转载)
最近碰到一个项目,前端用apache htttpd进行发布(80端口),通过双机负载均衡转发到后端的两个tomcat进行处理(8081和8082端口),现在需要随时监控这三个端口的情况,一旦down掉 ...
- Linux下使用tree命令查看目录结构
Linux下的文件虽然是层次型组织结构的,但是我们平时登录到主机上的时候都是使用的各种shell并没有图形界面,看上去很不直观,Linux下有个小命令叫做tree,可以以目录树的形式显示文件结构,类似 ...
- linux下使用free命令查看实际内存占用(可用内存)
转:http://blog.is36.com/linux_free_command_for_memory/ linux下在终端环境下可以使用free命令看到系统实际使用内存的情况,一般用free -m ...
- linux下用top命令查看cpu利用率超过100%
今天跑了一个非常耗时的批量插入操作..通过top命令查看cpu以及内存的使用的时候,cpu的时候查过了120%..以前没注意..通过在top的情况下按大键盘的1,查看的cpu的核数为4核. 通过网上查 ...
- linux中使用ifconfig命令查看网卡信息时显示为eth1,但是在network-scripts中只有ifcfg-eth0的配置文件,并且里面的NAME="eth0"。
除了题目中的问题,其实在执行命令:service network restart时,会报错: 解决办法: 首先需要修改70-persistent-net.rules文件: vim /etc/udev/ ...
- linux下的ifconfig命令
ifconfig工具不仅可以被用来简单地获取网络接口配置信息,还可以修改这些配置. 1.命令格式: ifconfig [网络设备] [参数] 2.命令功能: ifconfig 命令用来查看和配置网络设 ...
随机推荐
- Python高级语法-深浅拷贝-总结(4.2.1)
@ 目录 1.说明 2.代码 关于作者 1.说明 任何可变数据类型都牵扯到深浅拷贝 但是元组,常数等,不可变数据类型,无论浅拷贝,深拷贝都是指向 不管如何嵌套,一旦牵扯到可变数据类型,都会有深浅区别 ...
- Mysql技术内幕之InnoDB锁探究
自7月份换工作以来,期间一直在学习MySQL的相关知识,听了一些视频课,但是一直好奇那些讲师的知识是从哪里学习的.于是想着从书籍中找答案.毕竟一直 看视频也不是办法,不能形成自己的知识.于是想着看书汲 ...
- python极简代码之检测元素组成是否相同
可以检测两个字符串的组成是不是一样的,可以检测两个列表的元素是否一样,可以检测集合里的元素是否一致,可以检测字典里的值是否一致: 1 # !usr/bin/env python3 2 # *-* co ...
- MySQL 触发器、存储过程 练习
创建表并插入数据: ``` 字段名 数据类型 主键 外键 非空 唯一 自增 id INT 是 否 是 是 否 name VARCHAR(50) 否 否 ...
- CCNP之MERG实验报告
MGRE实验报告 一.实验要求: 1.R5为ISP,只能配置IP地址 2.R1--R3间建立MGRE环境,且使用EIGRP来学习各自环回 3.R4可以正常访问R5的环回 4.R1与R5进行chap认证 ...
- JVM笔记【1】-- 运行时数据区
目录 (一)java内存区域管理 1.1 程序计数器 1.2 虚拟机栈 1.3 本地方法栈 1.4 java堆 1.5 方法区 1.5.1 运行时常量池 (二)直接内存 (一)java内存区域管理 C ...
- vue3.0自定义指令(drectives)
在大多数情况下,你都可以操作数据来修改视图,或者反之.但是还是避免不了偶尔要操作原生 DOM,这时候,你就能用到自定义指令. 举个例子,你想让页面的文本框自动聚焦,在没有学习自定义指令的时候,我们可能 ...
- 为什么spring 被@Repository注解标识注入后是代理类
背景 今天发现一个奇怪的问题,有一个类是用的@Repository注解标识注入的,并且这个类并没有配置任何带代理和aop配置.但是得到的这个类不是一个原生类,而是一个代理类,如果换成了Componen ...
- HBase内存配置及JVM优化
前言 本文从HBase的内存布局说起,先充分了解HBase的内存区的使用与分配,随后给出了不同业务场景下的读写内存分配规划,并指导如何分析业务的内存使用情况,以及在使用当中写内存Memstore及读内 ...
- 本地项目上传至GitHub
本地项目上传至GitHub 使用git上传 一.安装git 直接官网下载,安装即可. git官网下载 github下载 按照好后大概就是这个样子 二.创建公钥和私钥 有的就可跳过此步骤 我们双击打开g ...