ifconfig、ifup、ifdown 概述
  这三个命令的用途都是启动网络接口,不过,ifup 与 ifdown 仅就 /etc/sysconfig/network- scripts 内的 ifcfg-ethx(x为数字)进行启动或关闭的操作,并不能直接修改网络参数,除非手动调整 ifcfg-ethx 文件才行。至于 ifconfig 则可以直接手动给予某个接口 IP 或调整其网络参数。下面我们就分别来谈一谈。

一、ifconfig
  ifconfig 主要是可以手动启动、观察与修改网络接口的相关参数,可以修改的参数很多,包括 IP 参数以及 MTU 等都可以修改,它的语法如下:

[root@linux ~]# ifconfig {interface} {up|down}  <== 观察与启动接口
[root@linux ~]# ifconfig interface {options}    <== 设置与修改接口
参数:
Interface,网卡接口代号,包括 eth0、eth1、ppp0 等
Options,可以接的参数,包括如下:
    Up或down,启动 (up) 或关闭 (down) 该网络接口(不涉及任何参数)
    mtu,可以设置不同的 MTU 数值,例如MTU 1500 (单位为 byte)
    netmask,就是子屏蔽网络
    broadcast,就是广播地址
范例:

范例一:观察所有的网络接口(直接输入 ifconfig)
[root@linux ~]# ifconfig
eth0 Link encap:Ethernet  HWaddr 00:0F:EA:A3:06:A2
      inet addr:192.168.10.100  Bcast:192.168.10.255  
Mask:255.255.255.0
      inet6 addr: fe80::20f:eaff:fe73:682/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:3439 errors:0 dropped:0 overruns:0 frame:0
      TX packets:2735 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000
      RX bytes:646935 (631.7 KiB)  TX bytes:562313 (549.1 KiB)
      Interrupt:209 Memory:fb000000-0

  一般来说,直接输入 ifconfig 就会列出目前已经被启动的卡,不论这个卡是否有设置 IP,都会被显示出来。而如果是输入 ifconfig eth0,则会显示出这个接口的相关数据,而不管该接口是否启动。所以,如果你想要知道某个网卡的 Hardware Address,直接输入“ifconfig "网络接口代号"”即可。至于上述代码中出现的各项数据是这样的(数据排列由上而下、由左而右)。

eth0:网卡的代号,也有 lo 这个 loopback。
HWaddr:网卡的硬件地址,习惯称为 MAC。
inet addr:IPv4 的 IP 地址,后续的 Bcase、Mask 分别代表的是 Broadcast 与 Netmask。
inet6 addr:是 IPv6 的版本的 IP,我们没有使用,所以略过。
RX:那一行代表的是网络由启动到目前为止的数据包接收情况,packets 代表数据包数、errors 代表数据包发生错误的数量、dropped 代表数据包由于有问题而遭丢弃的数量等。
TX:与 RX 相反,为网络由启动到目前为止的传送情况。
collisions:代表数据包碰撞的情况,如果发生太多次,表示你的网络状况不太好。
txqueuelen:代表用来传输数据的缓冲区的储存长度。
RX Bytes、TX Bytes:总传送、接收的字节总量。
Interrupt、Memory:网卡硬件的数据,IRQ 岔断与内存地址。

  通过观察上述的资料,大致上可以了解到你的网络情况,尤其是 RX、TX 内的 error 数量,以及是否发生严重的 collision 情况,都是需要注意的。

范例二:暂时修改网络接口
[root@linux ~]# ifconfig eth0 192.168.100.100
# 如果不加任何其他参数,则系统会依照该 IP 所在的 class 范围,
# 自动地计算出 netmask 以及 network, broadcast 等 IP 参数

[root@linux ~]# ifconfig eth0 192.168.100.100 netmask 255.255.255.128 \
> mtu 8000 
# 设置网络接口,同时设置 MTU 的数值

[root@linux ~]# ifconfig eth0 MTU 9000
# 仅修改该接口的 MTU 数值,其他的保持不动

[root@linux ~]# ifconfig eth0:0 192.168.50.50
# 仔细看那个接口, eth0:0 。那就是在该网络接口上,再仿真一个网络接口,
# 亦即是在一个网卡上面设置多个 IP 的意思啦

[root@linux ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0F:EA:A3:06:A2
          inet addr:192.168.10.100 Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3669 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2892 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:667547 (651.9 KiB)  TX bytes:584799 (571.0 KiB)
          Interrupt:209 Memory:fb000000-0

eth0:0    Link encap:Ethernet  HWaddr 00:0F:EA:A3:06:A2
          inet addr:192.168.200.2 Bcast:192.168.200.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:209 Memory:fb000000-0
# 仔细看,是否与硬件有关的信息都相同。没错。因为是同一个网卡。

[root@linux ~]# ifconfig eth0:0 down
# 关掉 eth0:0 这个接口。如果想要启动 eth1 ,并且不设置任何网络参数
# ifconfig eth1 up 就可以实现

[root@linux ~]# /etc/init.d/network restart
# 刚刚设置的数据全部失效,会以 ifcfg-ethx 的设置为主

  使用 ifconfig 可以暂时用手动来设置或修改某个适配卡的相关功能,并且也可以通过 eth0:0 这种虚拟的网络接口来设置一张网卡上面的多个 IP。手动的方式是比较简单。而且设置错误也没有关系,因为我们可以利用 /etc/init.d/network restart 来重新启动整个网络接口,那么之前手动的设置数据会全部失效。另外,要启动某个网络接口,但又不让它具有 IP 参数时,直接给它 ifconfig eth0 up 即可。这个操作经常在无线网卡当中进行,因为我们需要启动无线网卡让它去检测 AP 存在与否。

二、ifup 和 ifdown
  实时地手动修改一些网络接口参数,可以利用 ifconfig 来实现,如果是要直接以配置文件,亦即是在 /etc/sysconfig/network-scripts 里面的 ifcfg-ethx 等文件的设置参数来启动的话,那就得要通过 ifdown 或 ifup 来实现了。

[root@linux ~]# ifup   {interface}
[root@linux ~]# ifdown {interface}

[root@linux ~]# ifup eth0

  ifup 与 ifdown 真是太简单了。这两个程序其实是 script 而已,它会直接到 /etc/ sysconfig/network-scripts 目录下搜索对应的配置文件,例如 ifup eth0,它会找出 ifcfg-eth0 这个文件的内容,然后加以设置。关于 ifcfg-eth0 的设置请参考下面的说明。
  不过,由于这两个程序主要是搜索设置文件(ifcfg-ethx)来进行启动与关闭的,所以在使用前请确定 ifcfg-ethx 是否真的存在于正确的目录内,否则会启动失败。另外,如果以 ifconfig eth0 来设置或者是修改了网络接口后,就无法再以 ifdown eth0 的方式来关闭了。因为 ifdown 会分析比较目前的网络参数与 ifcfg-eth0 是否相符,不符的话,就会放弃这次操作。因此,使用 ifconfig 修改完毕后,应该要以 ifconfig eth0 down 才能够关闭该接口。

三、配置 ifcfg-eth0
  网络接口配置文件 ifcfg-eth0 在 /etc/sysconfig/network-script 在这个目录下面,存放的是网络接口(网卡)的脚本文件(控制文件),ifcfg-eth0 是默认的第一个网络接口,如果机器中有多网络接口,那么名字就将依此类推 ifcfg-eth1、ifcfg-eth2、ifcfg-eth3 ……
  配置项目说明(形式:设定项=值):

DEVICE     接口名(设备,网卡)
USERCTL    [yes|no](非root用户是否可以控制该设备)
BOOTPROTO  IP 的配置方法 [none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP协议)
HWADDR    MAC地址
ONBOOT    系统启动的时候网络接口是否有效(yes/no)
TYPE      网络类型(通常是Ethemet)
NETMASK    网络掩码
IPADDR     IP地址
IPV6INIT     IPV6是否有效(yes/no)
GATEWAY    默认网关IP地址
BROADCAST   广播地址
NETWORK    网络地址

例如,可以设置成这样:

DEVICE=eth0        
BOOTPROTO=static        
BROADCAST=192.168.1.255        
HWADDR=00:0C:2x:6x:0x:xx        
IPADDR=192.168.1.12        
NETMASK=255.255.255.0        
NETWORK=192.168.1.0        
ONBOOT=yes        
TYPE=Ethernet

Linux下 ifconfig、ifup、ifdown使用说明相关推荐

  1. Linux下 ifconfig 命令的使用(Linux命令)

    ifconfig 是Linux下十分常用的命令,十分有必要掌握如何使用. 由于之前接触网络这块较少十分不熟悉,现在必须熟悉一下了. 一.介绍 ifconfig 是 Linux 中用来查询和配置网络接口 ...

  2. Linux下ifconfig不显示ip地址问题总结

    问题一:ifconfig之后只显示lo,没有看到eth0 ? eth0设置不正确,导致无法正常启动,修改eth0配置文件就好 ubuntu 12.04的网络设置文件是/etc/network/inte ...

  3. linux中ifconfig命令作用,Linux下ifconfig命令详解

    Linux下网卡命名规律:eth0,eth1.第一块以太网卡,第二块.lo为环回接口,它的IP地址固定为127.0.0.1,掩码8位.它代表你的机器本身.相关文件在/etc/sysconfig/net ...

  4. linux下ifconfig, DNS以及route配置

    转载:http://blog.csdn.net/wangjingfei/article/details/5283632/ 熟悉使用ifconfig 会非常方便. ifconfig eth0 新ip 然 ...

  5. linux下w和who使用说明

    为什么80%的码农都做不了架构师?>>>    LINUX是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务.系统管理员可以随时了解系统中有那些用户,用户都在进行什么 ...

  6. linux下ifconfig命令看不到IP centos7——ens33

    当前环境VMware15+centos7  在终端输入ifconfig后没有开到IP地址: 解决方法:root用户执行命令 cd /etc/sysconfig/network-scripts/ vi ...

  7. linux下ifconfig命令找不到解决办法

    ifconfig命令找不到 解决办法 首先,输入yum search ifconfig 命令搜索是否有该安装包 !!!发现有一个匹配的net-tools.x86_64安装包,这是一个基本网路工具包 安 ...

  8. linux usb摄像头使用方法,linux 下USB 摄像头的使用说明

    此处我只说用uvc通用驱动 查询摄像头是否是UVC设备,参见官网 1 找到CAMERA ID 2 lsusb -d VID:PID -v | grep "14 Video" 如果输 ...

  9. Linux下ifconfig中没有wlan0

    解决linux中没有wlan0的步骤 一.linux中下载compat-wireless https://mirror2.openwrt.org/sources/ 找到compat-wireless- ...

最新文章

  1. 照抄不翻车:抗住千万流量的大型分布式系统架构设计
  2. 如何让Ubuntu系统支持WebP图片格式
  3. springMVC 之 annotation
  4. javaWeb_JSP 动态指令 forward 的程序
  5. 2、mybatis主配置文件之properties
  6. Python线程、进程、进程池、协程
  7. mysql安装之后怎么进入_MySQL常规练习 .MySQL安装成功后的进入方式
  8. Centos 7安装RabbitMQ 3.7.8版本(单机版)-不使用RPM
  9. Spark Streaming 和 Flink 的对比以及详细描述,图文对比、代码
  10. Memcache:set()
  11. 搜狗浏览器智慧版_4月浏览器份额榜单出炉:Edge登上第二、Chrome第一无人撼动...
  12. java收费_一文看懂Java收费 附可替换方案!
  13. 计算机中回收站的作用,windows7回收站的功能与作用
  14. phpMyAdmin下载、安装和使用入门教程
  15. 为什么游戏模型不如原画好看?
  16. Codeforces Round #439 (Div. 2) E. The Untended Antiquity (hash+数状数组)
  17. 为什么要认证抖音蓝V?怎样申请抖音蓝V认证?
  18. 数据结构复习 ---- 邻接表
  19. c语言按键控制的步进电机程序,独立按键控制步进电机运转c语言程序
  20. 前端开发【短信分享】——H5调起短信,发送指定内容到指定号码

热门文章

  1. 【Skill】解决 QQ 邮箱无法更改发信人名称问题
  2. Unity 制作萌系live2d桌宠:屏幕自适应+交互
  3. 智能,服务,生态:华为调制的AIOps,味道有何不同?
  4. iOS模拟键盘长按删除
  5. 贷款买房怎么做才划算?贷款买房注意事项
  6. 买房贷款,“房贷20年”和“房贷30年”,哪个更划算?为什么?
  7. SpringCloud+CloudAlibaba微服务初阶入门
  8. 数字网络监控和传统模拟监控的区别
  9. ios虚拟服务器降级,升级了iOS 12很后悔,没关系手把手教你如何降级!
  10. 淘宝补单发货地不一样可以吗?正确补单流程是什么?