linux中一些常见的设置网络参数的命令.md

这里介绍三个和网络设置相关的命令:

  • ifconfig:查询、设置网卡与ip、子网掩码等参数(需先安装net-tools工具)
  • ifup、ifdown:启动和关闭网络接口
  • route:查看、配置路由信息

Table of Contents

ifconfig

首先来看ifconfig命令

ifconfig [网卡名] [选项]
up、down:启动或关闭该网络接口
mtu:设置mtu值
netmask:设置子网掩码
broadcast:设置广播地址

首先看第一个例子,查看系统上所有网卡,只需输入ifconfig命令即可,不用添加任何参数

# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.220  netmask 255.255.255.0  broadcast 192.168.2.255
        inet6 fe80::1733:cf21:906d:57af  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:84:5b:d0  txqueuelen 1000  (Ethernet)
        RX packets 9946  bytes 10315936 (9.8 MiB)
        RX errors 0  dropped 3  overruns 0  frame 0
        TX packets 2208  bytes 186213 (181.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
  ……

从该命令的输出信息,我们可以得出很多信息,网卡名称、ip地址、子网掩码、广播地址等等

下面继续看几个例子

# 修改ip地址
# ifconfig eth0 192.168.1.222

你会发现,你只修改了ip地址,但是广播地址也会随着更改了。

# 同时修改ip、子网掩码以及mtu值
ifconfig eth0 192.168.2.222 netmask 255.255.240.0 mtu 1000

请尽快放心练习,最后只需要重启network就会恢复到之前配置文件的设定

ifup ifdown

当我们修改了网络配置文件/etc/sysconfig/network-scripts/eth0后,想立即生效。那么就需要使用

ifdown eth0
ifup eth0

除了该方法,一般我们还会使用

/etc/init.d/network restart 

来重启所有网卡。

route

route这个命令可以查看路由表,也可以用来设置路由。

查看路由信息 route [-nee]

  • -n:不显示主机名,直接用ip显示,速度更快。这个选项有很多关于网络的命令都有

  • -ee:显示更详细的信息

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.19.255.253  0.0.0.0         UG    0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
172.19.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth0
  • Destination:网络地址
  • Genmask:子网掩码,Destination和Genmask组成一个网络
  • Gateway:网关地址(如果显示是0.0.0.0则表示该路由直接由本机传送,也就是可以通过局域网直接发送。如果显示的是ip地址,则说明该路由需要经过路由器(网关)的帮忙才能够发送出去。
  • Flag:标志,常见的U表示该路由是启动着的,G表示该路由需要通过外部的主机传递数据包。