ifconfig

是用来查看、配置、启用或禁用网络接口的工具。可以用这个工具来临时配置网卡的IP地址、掩码、广播地址、网关等。

语法######

ifconfig [interface]

参数######

up 启动指定网络设备/网卡

down 关闭指定网络设备/网卡

-a 显示全部接口信息

-s 显示摘要信息

add 设置指定网卡配置IPv6地址

del 删除指定网卡配置IPv6地址

mtu<字节数> 设置网卡的最大传输单元(bytes)

netmask<子网掩码>设置网卡的子网掩码

multicast 为网卡设置组播标志

实例######

为网卡配置和删除IPV6地址

ifconfig eth0 add 33ffe:3240:800:1005::2/64    #为网卡eth0配置IPv6地址
ifconfig eth0 del 33ffe:3240:800:1005::2/64 #为网卡eth0删除IPv6地址

用ifconfig修改MAC地址

ifconfig eth0 hw ether 00:AA:BB:CC:dd:EE

配置IP地址

[root@qingcheng-app ~]#ifconfig eth0 192.168.2.10
[root@qingcheng-app ~]#ifconfig eth0 192.168.2.10 netmask 255.255.255.0
[root@qingcheng-app ~]#ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255

启用和关闭arp协议:

ifconfig eth0 arp   //开启网卡eth0的arp协议
ifconfig eth0 -arp //关闭网卡eth0的arp协议

设置最大传输单元

ifconfig eth0 mtu 1500

route

route程序对内核的IP选路进行操作。它主要用于通过已用ifconfig程序配置好接口来指定主机或网络设置静态路由。

语法######

route [-CFvnNee] [-A family |-4|-6]

选项######

-A:设置地址类型

-C:打印将Linux核心路由缓存

-v:详细信息模式

-n:不执行DNS方向查找,直接显示数字形式的IP地址

-e:netstat格式路由表

-net:到一个网络的路由表

-host:到一个主机的路由表

参数######

Add:增加指定的路由记录

Del:删除指定的路由记录

Target:目的网络或目的主机;

gw:设置默认网关

mss:设置TCP最大区块长度,单位MB

window:指定通过路由表的TCP链接的TCP窗口大小

dev:路由记录所表示的网络接口

实例######

显示当前路由

[root@qingcheng-app ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 121.14.47.1 0.0.0.0 UG 0 0 0 br1
121.14.47.0 0.0.0.0 255.255.255.128 U 0 0 0 br1
169.254.0.0 0.0.0.0 255.255.0.0 U 1006 0 0 br0
169.254.0.0 0.0.0.0 255.255.0.0 U 1007 0 0 br1
172.19.47.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0

添加网关/设置网关

route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0      //增加一条到达244.0.0.0的路由

屏蔽一条路由

route add -net 224.0.0.0 netmask 240.0.0.0 reject

删除路由记录

route del -net 224.0.0.0 netmask 240.0.0.0
route del -net 224.0.0.0 netmask 240.0.0.0 reject

删除和添加设置默认网关

route del default gw 192.168.120.240
route add default gw 192.168.120.240

netstat

显示网络连接、路由表、接口状态、伪装连接、网络链路信息和组播成员。

语法######

netstat [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n]

[--numeric-hosts] [--numeric-ports] [--numeric-users] [--symbolic|-N] [--extend|-e[--extend|-e]] [--program|-p]

选项######
 -t:tcp 协议相关
-u:udp协议相关
-r:raw socket相关
-l:处于监听状态
-a:所有状态
-n:已数字方式显示IP和端口
-e:扩展格式
-p:显示相关的进程和PID
常用组合:
-tan,uan,-tnl,unl
实例######

列出所有端口

netstat -a      //列出所有端口
netstat -at //列出所有tcp端口
netstat -au //列出所有udp的端口

列出所有处于监听状态的sockets

netstat -l      //只显示监听端口
netstat -lt //只列出所有监听tcp端口
netstat -lu //只列出所有监听udp端口
netstat -lx //只列出所有监听unix端口

显示每个协议的统计信息

netstat -s   //显示所有端口的统计信息
netstat -st //显示TCP端口的统计信息
netstat -su //显示UDP端口的统计信息

在netstat 输出中不显示主机,端口和用户名(host,port or user)

netstat -an    //不显示主机,端口,用户名
如果只是不想让着三个名称的一个被显示,使用以下命令
netstat -a --numeric-ports
netstat -a --numeric-hosts
netstat -a --numeric-users

持续输出netstat信息

netstat -c

显示核心路由信息

netstat -r

显示网络接口列表

netstat -i

ip

显示或操纵Linux主机路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。

语法######
ip [ OPTIONS ] OBJECT { COMMAND | help }
选项######
-V:显示指令版本信息
-s:输出更详细的信息
-f:强制使用指定的协议簇
-4:指定使用网络协议是IPv4协议;
-6:指定使用网络协议是IPv6协议;
-0:输出信息每条记录输出一行,即使内容多也不换行显示;
-r:显示主机时,不使用IP地址,而使用主机的域名。
参数######

网络对象:指定要管理的网络对象

具体操作:对指定的网络对象完成具体操作

help:显示网络对象支持的操作命令的帮助信息

实例######

用ip命令显示网络设备的运行状态

[root@qingcheng-app ~]# ip link list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UP mode DEFAULT qlen 1000
link/ether 80:18:44:ea:80:a8 brd ff:ff:ff:ff:ff:ff
3: em2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br1 state UP mode DEFAULT qlen 1000
link/ether 80:18:44:ea:80:a9 brd ff:ff:ff:ff:ff:ff
4: em3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT qlen 1000
link/ether 80:18:44:ea:80:aa brd ff:ff:ff:ff:ff:ff

显示更加详细的设备信息

[root@qingcheng-app ~]# ip -s link list|more
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
31597378 557905 0 0 0 0
TX: bytes packets errors dropped carrier collsns
31597378 557905 0 0 0 0
2: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UP mode DEFAULT qlen 1000
link/ether 80:18:44:ea:80:a8 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
391717022510 928145510 0 146014 0 16244537
TX: bytes packets errors dropped carrier collsns
176477581378 928005445 0 0 0 0

显示核心路由表

[root@qingcheng-app ~]# ip route list
default via 121.14.47.1 dev br1
169.254.0.0/16 dev br0 scope link metric 1006
169.254.0.0/16 dev br1 scope link metric 1007
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

显示邻居表

[root@qingcheng-app ~]# ip neigh list
172.19.47.27 dev br0 lladdr 00:22:64:f7:9e:52 STALE
172.19.47.212 dev br0 lladdr 52:54:00:fa:ee:f2 STALE
121.14.47.3 dev br1 lladdr 74:1f:4a:7f:90:9a STALE

ss

用来显示处于活动状态套接字信息。ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

语法######
ss [options] [ FILTER ]
选项######
-t:只显示tcp套接字
-u:只显示udp套接字
-h:显示帮助信息
-V:显示指令版本信息
-a:显示所有的套接字
-l:显示处于监听状态的套接字
-o:显示计时器信息
-m:显示套接字的内存使用情况
-p:显示使用套接字的进程信息
-i:显示内部的TCP信息
-4:指定使用网络协议是IPv4协议
-6:指定使用网络协议是IPv6协议
-d:只显示DDCP套接字
-w:仅显示RAW套接字
-x:仅显示UNIX域套接字
实例######

显示TCP连接

[root@qingcheng-app ~]# ss -t -a
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 1 *:rfb *:*
LISTEN 0 1 *:5901 *:*
LISTEN 0 5 *:5902 *:*
LISTEN 0 5 *:5903 *:*
LISTEN 0 1 *:5904 *:*
LISTEN 0 1 *:5905 *:*
LISTEN 0 128 *:20050 *:*
LISTEN 0 128 *:6002 *:*
LISTEN 0 128 *:22898 *:*
LISTEN 0 128 *:6003 *:*

显示 Sockets摘要

[root@qingcheng-app ~]# ss -s
Total: 3196 (kernel 11861)
TCP: 102 (estab 1, closed 74, orphaned 0, synrecv 0, timewait 73/0), ports 0 Transport Total IP IPv6
* 11861 - -
RAW 2 0 2
UDP 12 9 3
TCP 28 21 7
INET 42 30 12
FRAG 0 0 0

列出所有打开的网络连接断开

[root@qingcheng-app ~]# ss -l|more
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
nl UNCONN 0 0 rtnl:mission-control/6366 *
nl UNCONN 0 0 rtnl:evolution-calen/135397 *
nl UNCONN 0 0 rtnl:gnome-software/135092 *
nl UNCONN 0 0 rtnl:mission-control/4058 *
nl UNCONN 0 0 rtnl:gnome-software/6409 *
nl UNCONN 0 0 rtnl:goa-daemon/6354 *
nl UNCONN 0 0 rtnl:evolution-calen/4452 *
nl UNCONN 0 0 rtnl:evolution-calen/6543 *

列出所有进程使用的socket

[root@qingcheng-app ~]# ss -pl|more
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
nl UNCONN 0 0 rtnl:mission-control/6366 *
nl UNCONN 0 0 rtnl:evolution-calen/135397 *
nl UNCONN 0 0 rtnl:gnome-software/135092 *
nl UNCONN 0 0 rtnl:mission-control/4058 *
nl UNCONN 0 0 rtnl:gnome-software/6409 *
nl UNCONN 0 0 rtnl:goa-daemon/6354 *
nl UNCONN 0 0 rtnl:evolution-calen/4452 *

显示所有UDP Sockets

root@qingcheng-app ~]# ss -u -a
State Recv-Q Send-Q Local Address:Port Peer Address:Port
UNCONN 0 0 *:31804 *:*
ESTAB 0 0 121.14.47.48:34330 193.228.143.14:ntp
UNCONN 0 0 *:53334 *:*
UNCONN 0 0 192.168.122.1:domain *:*
UNCONN 0 0 *%virbr0:bootps *:*
UNCONN 0 0 *:bootpc *:*
UNCONN 0 0 *:bootpc

简述iproute家族命令的更多相关文章

  1. Linux网络——配置网络之iproute家族命令

    Linux网络——配置网络之iproute家族命令 摘要:本文主要学习了iproute家族用来配置网络的命令. ip命令 ip命令用于查看和管理IP地址.接口.路由.隧道等.用来取代ifconfig命 ...

  2. Linux网络——配置网络之ifconfig家族命令

    Linux网络——配置网络之ifconfig家族命令 摘要:本文主要学习了ifconfig家族用来配置网络的命令. ifconfig命令 ifconfig命令用来显示或设置网络接口信息,设置只是临时生 ...

  3. ifconf家族命令

    1  ifconfig 命令: ifconfig 命令用来查看和配置网络设备.当网络环境发生改变时可通过此命令对网络进行相应的配置. 查看: ifconfig : 显示正在激活中的网卡 ifconfi ...

  4. Linux相关网络命令

    1.简述osi七层模型和TCP/IP四层模型 OSI七层模型 TCP/IP四层模型 2.简述iproute家族命令 ip命令: ip [OPTIONS] OBJECT {COMMAND|help} i ...

  5. linux中网络部分的总结

    二.简述iproute家族命令 静态配置地址的方法有一下几种方式: (1)ifconfig (2)ip命令 (3)GUI工具 (4)TUI工具 (5)编辑配置文件 1.ifconfig 查看接口:if ...

  6. Qt之命令行编译(nmake)

    简述 前两节讲解了如何在Visual Studio和Qt Creator中搭建Qt开发环境,并分享了我们第一个小程序-Hello World. 下面分享如何使用命令行来编译Qt程序.当然,MSVC和M ...

  7. Linux C 程序 空语句-gcc编译命令(SIX)

    C语言语句1.空语句:当一个if或者while判断部分能完成工作,空语句可以用来表示if或者while内的空循环体 if(a == b ); 2.gcc编译器 //程序的编译过程: // 预处理:pr ...

  8. linux常用命令解析

    linux下一些注意事项 1. linux下严格区分大小写 ls 简述:列出文件或目录列表. -> ls 默认列出当前目录下的所有文件. -> ls -l(long)以长格式查看文件. - ...

  9. Linux 下 终端 相关的命令

    1. 概述 Linux 服务器, 通常可以由多个终端连接 简单介绍一些 终端 相关的操作 最终的目的, 是定位到某个终端, 然后把它 踢下来, 甚至可以不让他再次连接 2. 环境 操作系统 CentO ...

随机推荐

  1. python基础第一天 3.27

    # #作业1# 猜年龄,可以让用户猜三次!age = 25user_guess = int(input("input your guess"))   age = 25count = ...

  2. THUWC2019游记

    Day -INF 听说自己苟进了THUWC,然而我还什么都不会啊,这样去了不得被吊打. 随便列了几个WC前的计划,然而到最后一个都没有完成,感觉学习效率好低啊,周围一众神仙天天吊打我. Day 0 坐 ...

  3. python中文件读写

    读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...

  4. 高通sdm845_la2.0源码编译及使用QFIL刷机

    一.下载源码 高通芯片代码下载地址:https://chipcode.qti.qualcomm.com/ . *_amss_standard_oem : 高通私有源码(*为sdm845-la--. * ...

  5. 使用U盘为龙芯笔记本安装操作系统

    摘要:在没有光驱的情况下,可以使用dd命令或者ultraISO软件制作Linux安装U盘,方法适合龙芯和X86.AMD64的设备. 前段时间,由于开发需要,拿到了一部龙芯3A3000的笔记本.出厂的安 ...

  6. tp备份数据

    <?php namespace Chenlin2103\Controller; class BaksqlController extends MainController{ public $co ...

  7. Problem 6: Sum square difference

    The sum of the squares of the first ten natural numbers is, 12 + 22 + ... + 102 = 385 The square of ...

  8. VBA在WORD应用中如何确定文本是否被选定

    确定文本是否被选定Selection 对象的 Type 属性返回所选内容类型的信息.如果所选内容为插入点,则下列示例显示一条消息. Sub IsTextSelected()    If Selecti ...

  9. Element Ui中table实现表格编辑效果

    主要以css实现 .tb-edit .el-input, .tb-edit .el-input-number, .tb-edit .el-select { display: none; width: ...

  10. 禁用ViewPager的滑动事件

    public class NoScrollViewPager extends ViewPager { private boolean noScroll = false; public NoScroll ...