Linux网络属性配置详解

来源:互联网 发布:ubuntu 硬盘安装 编辑:程序博客网 时间:2024/06/16 17:07

ifcfg命令家族


ifconfig命令:接口及地址查看与管理


查看接口

查看已经激活的接口信息:

[root@www ~]# ifconfigeno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500        inet 192.168.179.128  netmask 255.255.255.0  broadcast 192.168.179.255        inet6 fe80::20c:29ff:fe25:ffbc  prefixlen 64  scopeid 0x20<link>        ether 00:0c:29:25:ff:bc  txqueuelen 1000  (Ethernet)        RX packets 9536  bytes 730456 (713.3 KiB)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 6760  bytes 466170 (455.2 KiB)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0eno33554984: ...与eno16777736内容类似,省略...lo: ...与eno16777736内容类似,省略...

查看指定接口的信息:
格式:ifconfig INTERFACE

[root@www ~]# ifconfig eno33554984

查看所有激活与为激活接口的信息:
格式:ifconfig -a


管理接口

SYNOPSIS:ifconfig INTERFACE options | address

激活网卡接口:
格式:ifconfig INTERFACE up

[root@www ~]# ifconfig eno33554984 up

冻结网卡接口:
格式:ifconfig INTERFACE down

[root@www ~]# ifconfig eno33554984 down

为网卡接口配置ipv4地址:
格式:ifconfig INTERFACE ADDRESS/PREFIXifconfig INTERFACE ADDRESS netmask NETMASK

[root@www ~]# ifconfig eno33554984 192.168.172.125/24

使用标签为网卡接口配置多个ipv4地址
格式:ifconfig IFACE_LABEL ADDRES/PREFIX

[root@www ~]# ifconfig eno33554984:0 192.168.179.200/24

增加或删减网卡接口的属性:
格式:ifconfig INTERFACE [-]OPTION

[root@www ~]# ifconfig eno33554984 promisc         #增加promisc属性[root@www ~]# ifconfig eno33554984 -promisc        #删减promisc属性

增加ipv6地址:
格式:ifconfig IFACE add ADDRESS/PREFIXLEN
删除ipv6地址:
格式:ifconfig IFACE del ADDRESS/PREFIXLEN


route命令:路由表查看及管理


查看路由表:

格式:route -n
route命令默认会将路由表中的地址转换成域名或主机名来显示,这个过程将花费大量时间。常同“-n”选项一同使用,不进行转换,直接以ip地址的形式显示。

[root@www ~]# route -nKernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         192.168.179.2   0.0.0.0         UG    100    0        0 eno16777736192.168.179.0   0.0.0.0         255.255.255.0   U     0      0        0 eno16777736192.168.179.0   0.0.0.0         255.255.255.0   U     0      0        0 eno33554984

添加路由条目:

SYNOPSIS:route add [-net | -host] TARGET/PREFIX gw GW [dev IFACE]
dev 可省略,若省略,路由表的网卡接口项将使用默认值。

添加主机路由条目:
格式:route add -host ADDRESS gw GATEWAY [dev INTERFACE]

[root@www ~]# route add -host 10.10.10.10 gw 192.168.179.100 dev eno33554984

添加网络路由条目:
格式:route add -net ADDRESS/PREFIX gw GATEWAY [dev INTERFACE]
route add -net ADDRESS netmask NETMASK gw GATEWAY [dev INTERFACE]

[root@www ~]# route add -net 10.0.0.0/8 gw 192.168.179.101 dev eno33554984

添加默认路由条目:
格式:route add default gw GATEWAY [dev INTERFACE]
诡异的事情发生了,添加默认路由条目的操作在CentOS 7上进行时会报错,在CentOS 6上则能顺利完成,暂时没找到原因。

[root@www ~]# route add default gw 192.168.179.2 

删除路由条目:

SYNOPSIS:route del [-net | -host] target [gw GW] [netmask Nm] [[dev] If]
删除主机路由条目:
格式: `route dle -host ADDRESS

[root@www ~]# route del -host 10.10.10.10

删除网络路由条目:
格式:route del -net ADDRESS/PREFIX

[root@www ~]# route del -net 30.0.0.0/8

删除默认路由条目:
格式:route del default
同上面添加默认路由条目时相同,删除默认路由条目在CentOS 6上能顺利执行,在CentOS 7上失效了。


netstat命令:查看网络状态


显示路由表:

格式:netstat -rn

  • -r:显示内核路由表
  • -n:数字格式显示
[root@www ~]# netstat -rnKernel IP routing tableDestination     Gateway         Genmask         Flags   MSS Window  irtt Iface0.0.0.0         192.168.179.2   0.0.0.0         UG        0 0          0 eno16777736192.167.4.0     0.0.0.0         255.255.255.0   U         0 0          0 eno33554984...省略更多...

显示网络连接:

格式:netstat [OPTIONS]…

OPTIONS:

  • –tcp | -t:TCP协议相关连接
  • –udp | -u:UDP协议相关连接
  • –raw | -w:raw socket相关的连接
  • –listening | -l:处于监听状态的连接
  • -a:所有状态
  • -n:以数字格式显示IP和Port
  • -e:扩展格式
  • -p:显示相关的进程及PID

常用组合:

  • -tan:以数字格式显示所有状态下的TCP连接
  • -uan:以数字格式显示所有状态下UDP连接
  • -tnl:以数字格式显示TCP协议中处于监听状态下的连接
  • -unl:以数字格式显示UDP协议中处于监听状态下的连接
  • -tunlp:以数字格式显示TCP协议和UDP协议中处于监听状态下的连接,同时显示各连接的进程及PID

显示网卡接口的统计数据:

netstat -i:显示所有接口的统计数据。

[root@www ~]# netstat -iKernel Interface tableIface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flgeno16777  1500    18469      0      0 0         11016      0      0      0 BMRUeno33554  1500    21103      0      6 0          5631      0      0      0 BMPRUlo       65536       10      0      0 0            10      0      0      0 LRU

netstat -I\

[root@www ~]# netstat -Ieno33554984Kernel Interface tableIface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flgeno33554  1500    22031      0      6 0          5631      0      0      0 BMPRU

iproute2命令家族


ip命令


ip link set:设置接口属性。
格式:ip link set DEVICE COMMAND

子命令:

  • up | down:启用或禁用网卡接口;
  • multicast {on | off}:启用或禁用多播功能;
  • name Name:重命名网卡接口;
  • netns PID:ns为namespace,用于将网卡接口移动到指定的网络名称空间中;

ip link show:显示设备属性
格式:ip link show [DEVICE]

ip link help:显示简要使用帮助


ip netns

ip netns list:列出所有的netns;
ip netns add NAME:创建指定的netns;
ip netns del NAME:删除指定的netns;
ip netns exec NAME COMMAND:在指定的netns中运行命令;


ip addr

ip addr {add | del}:添加和删除IP地址
格式:ip addr {add | del} IFADDR/PREFIX dev STRING

[root@www ~]# ip addr add 10.0.0.10/8 dev eno33554984  #添加地址[root@www ~]# ip addr del 10.0.0.10/8 dev eno33554984  #删除地址

ip addr show:显示网卡接口的地址信息
格式:ip addr show [device]

[root@www ~]# ip addr show eno33554984

ip addr flush:清空地址
格式:ip addr flush DEVICE

[root@www ~]# ip addr show eno33554984

ip route:管理路由表

ip route add:添加路由条目
格式:`ip route add ADDRESS/PREFIX via GATEWAY [dev IFACE] [src SOURCE_IP]

[root@www ~]# ip route add 10.0.0.0/8 via 192.168.179.100

ip route change:改变已存在的路由条目,用法与add相似;
ip route replace:替代或添加路由条目,用法与add相似;
ip route delete:删除路由条目;
格式:ip route del ADDRESS/PREFIX

[root@www ~]# ip route del 10.0.0.0/8

ip route show:显示路由表
格式:ip route show [dev IFACE]

[root@www ~]# ip route show dev eno16777736default via 192.168.179.2  proto static  metric 100 192.168.179.0/24  proto kernel  scope link  src 192.168.179.128

ip route flush:清空路由条目
格式:ip route flushe [dev IFACE]

[root@www ~]# ip route flush dev eno33554984

ip route get:获取指定路由条目
格式:ip route get ADDRESS

[root@www ~]# ip route get 10.0.0.010.0.0.0 via 192.168.179.100 dev eno16777736  src 192.168.179.128     cache 

ss命令

show status,显示网络状态
格式:`ss [OPTION]… [FILTER]
选项

  • -t:TCP协议相关连接
  • -u:UDP相关链接
  • -w:raw socket相关的连接
  • -l:监听状态的连接
  • -a:所有状态的连接
  • -n:数字格式
  • -p:相关程序及其PID
  • -e:扩展格式信息
  • -m:内存用量
  • -o:计时器信息

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

  1. state TCP_STATE
    TCP的常见状态:LISTEN、ESTABLISEHD、FIN_WAIT_1、FIN_WAIT_2、SYN_SENT、SYN_RECV、CLOSED。
  2. EXPRESSION:
    目标端口:dport =
    源端口:sport =
    示例:’( dport = :22 or sport = :22)’
[root@www ~]# ss -tan '( dport = :22 or sport = :22 )'State      Recv-Q Send-Q              Local Address:Port                Peer Address:Port LISTEN     0      128                             *:22                             *:*     ESTAB      0      0                 192.168.179.123:22                 192.168.179.1:49524 LISTEN     0      128                            :::22                            :::*     

nmcli命令

nmcli device

格式:nmcli device COMMAND

  • status :显示各个网卡接口的状态
[root@www ~]# nmcli device status设备         类型      状态    CONNECTION  eno16777736  ethernet  连接的  eno16777736 eno33554984  ethernet  连接的  eno33554984 lo           loopback  未管理  --     
  • show :显示网络接口信息
    格式:nmtil device show
[root@www ~]# nmcli device show eno33554984
  • connect | disconnect:连接/断开网卡接口
    格式:nmcli device {connect | disconnect} IFACE
[root@www ~]# nmcli device disconnect eno33554984Device 'eno33554984' successfully disconnected.
  • delete:删除软件接口,如Pbonds, bridges, teams…

nmcli connection

管理网络连接
show
up
down
add
edit
modify
delete
reload
load


配置文件


网卡配置文件

/etc/sysconfig/network-scripts/route-IFACE

文件中的参数:

DEVICE:此配置文件对应的设备的名称 ONBOOT:在系统引导过程中,是否激活此接口 UUID:此设备的唯一标识
IPV6INIT:是否初始化IPv6
BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp、bootp、static、none
TYPE:接口类型,常见的有Ethernet,Bridge DNS1:第一DNS服务器指向 DNS2:第二DNS服务器指向
DNS3:第三DNS服务器指向 DOMAIN:DNS搜索域
NETMASK:子网掩码;CentOS7支持使用PREFIX以长度方式指明子网掩码 USERCTL:是否允许普通用户控制此设备
PEERDNS:若果OBBTPROTO的值为“dhcp”,是否允许dhcp
server分配dns服务器指向覆盖本地手动指定的DNS服务器指向;默认为允许 HWADDR:设备的MAC地址
NM_CONTROLLED:是否使用NetworkManager服务控制接口


路由表配置文件

/etc/sysconfig/network-scripts/route-IFACE

配置文件内容有两种格式,但同一个配置文件只能使用一种格式,不能混合使用。

第一种格式:

TARGET via GW

第二种格式:

ADDRESS#=TARGET
NETMASK#=MASK
GATEWAY#=NEXTHOP


为网卡别名添加配置文件

网卡别名的配置文件与普通的网卡配置文件相似,但其配置文件中的参数DEVICE的值应为网卡的别名,且不支持动态获取IP地址。

0 0
原创粉丝点击