CentOS的网络配置的命令详解

我们在进行对CentOS的网络配置时,一般会从IP地址(IPADDR)、子网掩码(NETMASK)、网关(Gateway)、主机名(HOSTNAME)、DNS服务器等方面入手。而在CentOS中,又有着不同的命令或配置文件可以完成这些配置操作,接下来,我们将从ifcfg系命令,iproute2系命令以及配置文件3个方面来简析网络配置的方法。

一、ifcfg系命令

ifcfg系命令包括ifconfig,route,netstat和hostname。

1、ifconfig命令

用来配置一个网络接口。它的使用格式如下:

a):ifconfig [-a] [interface]

-a:表示显示所有的网络接口信息,包括inactive状态的接口

~]# ifconfig -a

b):ifconfig IFACE(网络接口名,下同) IPADDR netmask NETMASK [up|down]

表示通过ifconfig命令直接修改接口的ip地址和netmask,并可启停该接口。

该命令会将配置参数立即送往内核中的TCP/IP协议栈,所以会立即生效,但是重启服务后会无效。

~]# ifconfig eth1 172.16.7.14 netmask 255.255.0.0 ~]# ifconfig eth1 172.16.7.14/16 down

2、route命令

显示和配置ip路由表。它的使用格式如下:

a):route [-n]

表示查看全部的路由表,并以数字显示ip地址

~]# route -n

b):route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]

添加相应接口的路由

~]# route add -host 172.16.7.14 gw 172.16.0.1 dev eth1  #主机路由 ~]# route add -net 172.16.7.0/24 gw 172.16.0.1 dev eth1  #网段路由 ~]# route add default gw 172.16.0.1 dev eth1  #默认路由

c):route del [-net|-host] target [netmask Nm] [[dev] If]

删除路由

~]# route del -host 172.16.7.14 dev eth1   ~]# route del -net 172.16.7.0/24 dev eth1 ~]# route del default dev eth1

3、netstat命令

显示网络连接,路由表,接口状态等。它的使用格式如下:

netstat [-n] [-r] [-p] [-e] [-a] [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [-i] [-I<IFACE>]

-n:以数字格式显示ip和端口号,不做地址转换;

-r:显示内核路由表

-p:显示相关的进程和PID

-e:显示扩展格式

-a:显示所有的连接状态

-t:显示tcp协议的相关连接的状态

-u:显示udp协议的相关连接的状态

-w:显示raw socket相关连接的状态

-l:显示处于监听状态的连接

-i:显示所有接口状态

-I<IFACE>:显示特定的接口状态

以上个选项可组合使用,常用组合有-tan,-uan,-tln,-uln,-tunlp等

~]#  netstat -tan ~]#  netstat -Ieth1

4、hostname命令

显示配置主机名。它的使用格式如下:

hostname:显示当前主机名

hostname HOSTNAME:修改当前主机名为HOSTNAME,仅当前有效,重启无效。

~]# hostname ~]# hostname TEST

5、hostnamectl命令(CentOS7新增)

显示配置主机名。它的使用格式如下:

hostnamectl [status]:显示当前主机名信息

hostnamectl set-hostname:设定主机名,永久有效

~]# hostnamectl set-hostname CentOS7

二、iproute2系命令

iproute2系命令有ip link,ip addr,ip route,ip netns和ss等。

1、ip link命令

配置网络接口属性。它的使用格式如下:

a):ip link set [dev] IFACE [up|down] [multicast on|off] [name IFACE] [mtu NUMBER]

up and down:启动或禁止选定的网络接口

multicast on or multicast off:启动或禁止组播功能

name NAME:重命名接口(命名前需先down掉接口)

mtu NUMBER:设置接口的mtu大小,默认为1500

~]# ip link set eth1 name eth2 up ~]# ip link set eth2 multicast off mtu 1000

b):ip link [show|list]

显示全部网络接口的属性。

~]# ip link show

2、ip addr命令

配置网络接口的ip地址。它的使用格式如下:

a):ip addr add IPADDR dev IFACE [label NAME] [broadcast ADDRESS] [scope SCOPE_VALUE]

增加一个ip地址。

[label NAME]:为额外添加的地址指明接口别名

[broadcast ADDRESS]:会根据ip和netmask自动计算,不用填

[scope SCOPE_VALUE]:gloal全局可用;link接口可用;host:本机可用

~]# ip addr add 172.16.7.14/24 dev eth1 label eth1:0

b):ip addr delete IPADDR dev IFACE

删除一个ip地址。

~]# ip addr del 172.16.7.14/24 dev eth1:0

c):ip addr show [dev IFACE|label IFACE:#]

仅显示指定的接口地址。

~]# ip addr show label eth1:0 ~]#  ip  addr  show  eth1

d):ip addr flush [dev] {IFACE|label IFACE:#}

清空指定的所有地址或别名的地址。

~]# ip addr flush label eth1:0 ~]#  ip  addr  flush  eth1

3、ip route命令

配置接口的路由表信息。它的使用格式如下:

a):ip route add TYPE PREFIX(目标网络)via GateWay [dev IFACE] [src SOURCE_IP]

添加路由表。

~]# ip route add 172.16.7.14 via 172.16.0.1 dev eth1 ~]#  ip  route  add  172.16.7.0/24  via  172.16.0.1  dev  eth1 ~]#  ip  route  add d efault  via  172.16.0.1  dev  eth1

b):ip route del TYPE PREFIX

删除路由表。

~]# ip route del 172.16.7.14 ~]# ip route del 172.16.7.0/24

c):ip route show

显示路由表。

~]# ip route show

d):ip route flush dev IFACE

清空指定接口的所有路由表。

~]# ip route flush dev  eth1

4、ss命令

和netstat命令一样用来查看网络状态,其选项参数和netstat命令基本相同,但是其查询速度比netstat命令要快。它的使用格式如下:

ss [options] [filter]

filter:过滤器    FILTER := [ state TCP-STATE ] [ EXPRESSION ]

选项:

-t:TCP协议的相关连接

-u:UDPF相关的连接

-w:raw socket相关的连接

-l:处于监听状态的连接

-a:所有状态

-n:以数字格式显示IP和Port

-e:扩展格式

-p:显示相关的进程及PID

-m:内存用量

-o:计时器信息

EXPRESSION:

dport:目标端口

sport:源端口

‘( dport = :22 or sport = :22 )’

~]# ss -tan  #查看当前网络所以tcp的连接状态

三、网络配置文件

在CentOS系统上我们可以通过对修改不同的网络配置文件来使得配置网络接口的各种属性,不过要使其永久有效,还需使内核重读修改后的配置文件。

1、IP/NETMASK/GW/DNS等属性的配置文件:

其路径为:/etc/sysconfig/network-scripts/ifcfg-IFACE

其格式为:

DEVICE:此配置文件对应的设备的名称;

ONBOOT:在系统引导过程中,是否激活此接口;

NETBOOT:是否支持网络引导;

UUID:设备的唯一标识;

IPv6INT:是否初始化IPv6;

BOOTPROTO:激活此接口时使用什么协议来配置属性,常用dhcp、bootp、static、none

TYPE:接口类型,常见的有ethernet、bridge;

DNS1:第一DNS服务器指向;

DNS2:备用DNS服务器指向;

DOMAIN:DNS搜索域;

GATEWAY:默认网关;

IPADDR:本机ip地址;

NETMASK:子网掩码;CentOS7支持使用PREFIX以长度指明子网掩码;

USERCTL:是否允许普通用户控制此设备;

PEERDNS:如果BOOTPROTO的值为“dhcp”,是否运行dhcp server分配的dns服务器指向覆盖本地手动指定的DNS服务器指向;默认为允许

HWADDR:设备的MAC地址;

NM_CONTROLLED:是否使用NetworkManager服务来控制接口;

network-scripts]# cat ifcfg-eth1 DEVICE="eth1" ONBOOT=yes NETBOOT=yes IPADDR=172.16.7.14 DNS=172.16.0.1 GATEWAY=172.16.0.1 NETMASK=255.255.0.0 IPV6INIT=no BOOTPROTO=none TYPE=Ethernet

2、路由的相关配置文件:

其路径为:/etc/sysconfig/network-scripts/route-IFACE

其格式为:(不可混用)

a):每行一个路由条目:

TARGET via GW

b):每三行一个路由条目:

ADDRESS#=TARGET

NETMASK#=MASK

GATEWAY#=NEXTHOP

network-scripts]# cat route-eth1  172.16.7.0/24 via 172.16.0.1

3、主机名的相关配置文件:

其路径为:/etc/sysconfig/network

其格式为:

HOSTNAME=<HOSTNAME>

sysconfig]# cat network # Created by anaconda HOSTNAME=centos7.1

4、DNS服务器指向配置文件:

其路径为:/etc/resolv.conf

其格式为:

nameserver DNS_SERVER_IP

etc]# cat resolv.conf

# Generated by NetworkManager

search magelinux.com

nameserver 172.16.0.1

四、结语

在学习Linux的路上,网络是非常重要的一环,其命令也在不断改进着,很多命令有着相同的作用,可以选择先记忆比较简单和高效的命令和参数。除上述命令之外,在CentOS7中也有着如nmtui这样直接显示图形界面的还用命令。

(0)

相关推荐

  • CentOS常用的文本查看命令详解

    关键词 :1.常用的文本查看命令-------2.文件的类型与基本的权限 1.常用的文本查看命令 下把命令一一 展示出来,然后在介绍 cat---- more----- less -----head- ...

  • CentOS查看各种服务信息命令详解

    查看服务器CPU型号 grep "model name" /proc/cpuinfo | cut -f2 -d: 查看服务器内存容量 grep MemTotal /proc/mem ...

  • CentOS下Uptime命令详解

    对于一些人来说系统运行了多久是无关紧要的,但是对于服务器管理员来说,这是相当重要的信息.服务器在运行重要应用的时候,必须尽量保证长时间的稳定运行,有时候甚至要求零宕机.那么我们怎么才能知道服务器运行了 ...

  • CentOS 7下systemd管理的详解

    CentOS 7下systemd管理的详解 CentOS系统启动流程: POST --> Boot Sequence --> Bootloader --> kernel + init ...

  • adb.exe是什么进程 adb.exe命令详解

    ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如G1手机). 它的主要功能有 ...

  • CentOS文件查看及编辑介绍详解

    CentOS文件查看及编辑介绍详解 2.1 cat 命令介绍 cat 命令的原含义为连接(concatenate), 用于连接多个文件内容并输出到标准输出流中(标准输出流默认为屏幕).实际运用过程中, ...

  • CentOS基础网络配置路由和默认网关介绍

    CentOS基础网络配置路由和默认网关介绍 一.查看路由 在命令行中输入 netstat -r 或者 route 命令即可查看系统中正在起作用的路由 二.增加路由 (1)在命令行中输入 route a ...

  • Win10 UWP应用系统的启动命令详解

    很多用户都升级到了win10系统,但是win10系统和以往的win7/win8系统有所不同,那么,Win10 UWP应用系统设置启动命令有哪些?小编整理了常见UWP应用命令,用户可尝试使用.一起去看看 ...

  • Linux/Ubuntu chmod命令详解使用格式和方法

    在 Ubuntu Linux 中用源码文件安装软件时经常都会用到chmod命令来更改文件的权限使其在安装时有执行的权限。由于 Ubuntu Linux 默认不能用root账户来登录所以在用chmod命 ...