Linux下新的网络管理工具ip替代ifconfig零压力

如果你使用 Linux 足够久,那么你自然知道一些工具的来与去。2009年 Debian 开发者邮件列表宣布放弃使用缺乏维护的 net-tools 工具包正是如此。到今天 net-tools 仍然被部分人们所使用。事实上,在 Ubuntu 14.10 中你依旧可以使用 ifconfig 命令来管理你的网络配置。

然而在某些情况下(例如, Ubuntu Docker 容器), net-tools 工具包将不会被默认安装,这就意味着不能使用 ifconfig 。尽管如此,还是可以用软件仓库来安装 net-tools 。

  1. sudo apt-get install net-tools

由于 net-tools 不再维护,我们强烈建议以 ip 命令代替 ifconfig。更重要的是 ip 在代替 ifconfig 的基础上表现得更好。

有趣的是 ip 不只是 ifconfig 的一个替代品,这两个命令在结构上有很多不同。即便如此,它们却都用于同一个目的。实际上 ip 命令可以完成下面所有事务。

  • 列出系统上配置了哪些网络接口
  • 查看网络接口的状态
  • 配置网络接口(包括本地环路和以太网)
  • 启用或禁用网络接口
  • 管理默认静态路由
  • IP 隧道配置
  • 配置 ARP 或 NDISC 缓存条目

接下来就让我们按上面说的试着用 ip 代替 ifconfig 。 我将例举一些简单的例子说明怎么使用 ip 命令。要正确使用并理解这些命令需要 root 权限,你可以用 su 切换到 root 用户或着使用 sudo 。因为这些命令将会改变你机器的网络信息。小心谨慎使用

注意:演示中用的地址仅作演示,具体到你的计算机时,会由你的网络以及硬件而不一样。

接下来,开始吧!

收集信息

多数人学习使用 ifconfig 做的第一件事就是查看网络接口上分配的 IP 地址。直接终端输入 ifconfig 不带任何参数回车即可看到。那么使用 ip 来做到这点我们只需要这样。

  1. ip a

这条命令将会列出所有网络接口的相关信息。

你说你只想看 IPv4 相关信息,那么可以这样。

  1. ip -4 a

你又说你想看特定的网络接口的相关信息,那么用如下命令查看无线网卡连接信息。

  1. ip a show wlan0

你甚至可以定位更具体的信息,欲查看 wlan0 上的 IPv4 信息,那么可以这样。

  1. ip -4 a show wlan0

还可以这样列出正在运行的网络接口。

  1. ip link ls up

修改配置网络接口

接下来让我们来学习 ip 命令的核心功能——修改配置网络接口。假如你想为第一个以太网的网卡( eth0 )安排一个特定的地址。用 ifconfig 的话,看起来是这样的。

  1. ifconfig eth0 192.168.1.101

那么用 ip 命令却是这样的。

  1. ip a add 192.168.1.101/255.255.255.0 dev eth0

简短一点可以这样。

  1. ip a add 192.168.1.101/24 dev eth0

显然这样的话,你需要知道你要安排的地址的子网掩码。

同样的方式,你可以这样删除一个网卡的地址。

  1. ip a del 192.168.1.101/24 dev eth0

如果你想简单的清除所有接口上的所有地址,只需要这样即可。

  1. ip -s -s a f to 192.168.1.0/24

ip 命令另一方面还能激活/禁用网络接口。

禁用 eth0 

  1. ip link set dev eth0 down

激活 eth0 

  1. ip link set dev eth0 up

使用 ip 命令,我们还可以添加/删除默认的网关,就像这样。

  1. ip route add default via 192.168.1.254

如果你想获得网络接口的更多细节,你可以编辑传输队列,给速度慢的接口设置一个低值,给速度快的设置一个较高值。那么你需要像这样做。

  1. ip link set txqueuelen 10000 dev eth0

该命令设置了一个很长的传输队列。你应该设置一个最适合你硬件的值。

还可以用 ip 命令为网络接口设置最大传输单元。

  1. ip link set mtu 9000 dev eth0

一旦你做了改变,便可以使用 ip a list eth0 来检验是否生效。

管理路由表

其实还可以使用 ip 命令来管理系统路由表。这是 ip 命令非常有用的一个功能。并且你应该小心使用

查看所有路由表。

  1. ip r

输出结果将像下图所示。

现在你想要路由的所有流量从 eth0 网卡的192.168.1.254网关通过,那么请这样做。

  1. ip route add 192.168.1.0/24 dev eth0

删除这个路由。

  1. ip route del 192.168.1.0/24 dev eth0


这篇文章仅仅对 ip 命令进行了一些介绍。不是要求你马上使用 ip 命令。你可以继续使用 ifconfig 。因为 ifconfig 的弃 用相当的慢,很多发行版里依旧默认安装了该命令。但是相信最终会逐步被 ip 命令完全取代。看过这篇介绍,到时候你便能很快的转换过去。如果你还想了解 更多 ip 命令的用法,请看 ip 命令的 man 手册。

时间: 2024-11-05 16:26:08

Linux下新的网络管理工具ip替代ifconfig零压力的相关文章

linux下的数据备份工具rsync讲解

linux下的数据备份工具 rsync(remote sync 远程同步) 名词解释: sync(Synchronize,即"同步")为UNIX操作系统的标准系统调用,功能为将内核文件系统缓冲区的所有数据(也即预定将通过低级I/O系统调用写入存储介质的数据)写入存储介质(如硬盘). sync 是一个linux同步命令,含义为迫使缓冲块数据立即写盘并更新超级块.在linux系统中,为了加快数据的读取速度,默认情况下,某些数据将不会直接写 入硬盘,而是先暂存内存中,如果一个数据被重复写,这

【one day one linux】linux下的软件包管理工具

Linux 下的软件包管理工具 linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装. 1.软件包的种类 Red Hat和Fedora:redhat最早发行的个人版本的Linux,自从Red Hat 9.0版本发布后,RedHat 公司就不再开发桌面版的 Linux发行套件,Red Hat Linux停止了开发,而将全部力量集中在服务器版的开发上,也就是 Red Hat Enterprise Linux 版.2004年4月30日,Red Hat

MySQL Study之--Linux下安装MySQL workbench工具

MySQL Study之--Linux下安装MySQL workbench工具 系统环境:      操作系统: RedHat EL6.4(64)      WorkBench: mysql-workbench-community-6.0.9 MySQL Workbench是一款专为MySQL设计的ER/数据库建模工具.它是著名的数据库设计工具DBDesigner4的继任者.你可以用MySQL Workbench设计和创建新的数据库图示,建立数据库文档,以及进行复杂的MySQL 迁移. MySQ

Linux下基本的网络工具

Linux下基本的网络工具 Table of Contents ifconfig route ip dns 其他配置文件 ifconfig ifconfig eth0 up ifconfig eth0 down ifconfig eth0 192.168.10.111 永久 IP /etc/sysconfig/network-scripts/ifcfg-eth0 IPADDR=xxxx NETMASK=xxx GATEWAY=xxxxx PEERDNS={yes|no}: 表示是否接受 dhcp

浅析 Linux 下的 arm 交叉编译工具

什么是交叉编译工具 http://elinux.org/Toolchains 要解释交叉编译工具,我们首先要理解三个基本概念: 编译平台:是指该编译器是在哪个平台编译出来的 编译主机:编译器运行在哪个平台 目标平台:编译器为哪个平台产生代码 比如我们在 Ubuntu(Linux) 下编译 arm 开发板的程序,那么: 编译平台就是 X86,该编译器在 x86上运行 编译主机就是这台运行 Ubuntu Linux 的电脑 目标平台就是 arm 开发板 所以通常所指的交叉编译,就是在该平台编译生成在

【调试】Linux下超强内存检测工具Valgrind

[调试]Linux下超强内存检测工具Valgrind 内容简介 Valgrind是什么? Valgrind的使用 Valgrind详细教程 1. Valgrind是什么? Valgrind是一套Linux下,开放源代码(GPLV2)的仿真调试工具的集合.Valgrind由内核(core)以及基于内核的其他调试工具组成. 内核类似于一个框架(framework),它模拟了一个CPU环境,并提供服务给其他工具:而其他工具则类似于插件 (plug-in),利用内核提供的服务完成各种特定的内存调试任务.

Linux下的屏幕录制工具XVidCap

Linux下的屏幕录制工具XVidCap Jun 05, 2008 XVidCap是Linux下的屏幕录制工具,是讲解软件使用方法.演示电脑操作的必备秘技. XVidCap大概是X windows Video Capture的缩写,未经考证. 之前是在Open Source Alternative这个网站搜索screencast找到的,准备动笔介绍一下时发现keke已经介绍过了. 文章中说下载个deb包安装就好了,我之前下载的是tar.gz,安装也着实非常麻烦,于是再罗嗦几句. 首先在这里下载,

linux下设置电信网通双线路IP地址

工作上遇到需要在linux下设置电信网通双线路IP地址,操作系统为Suse Linux Enterprise Linux 11 SP2,简要记录下步骤: 编辑/etc/sysconfig/network/ifcfg-eth0, /etc/sysconfig/network/ifcfg-eth1, 设置两个网卡的IP地址,eth0为电信的,eth1为网通的 BOOTPROTO='static' BROADCAST='' ETHTOOL_OPTIONS='' IPADDR='${telecomip}

linux 下的 crontab 定时任务工具

以下内容转自:https://www.cnblogs.com/longjshz/p/5779215.html 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为"crontab",是"cron table"的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. servi