ifconfig 命令:
选项:
-a : 显示所有接口,包括inactive状态的接口;
实例:
两种格式
给virbr0-nic网卡配置IP地址
~]#ifconfig virbr0-nic 192.168.10.100/24 up/down
~]#ifconfig virbr0-nic 192.168.10.11 netmask 255.255.255.0 up/down
注意:立即送往内核中的TCP/IP协议栈,并生效。
管理IPv6地址:
add addr/prefixlen
del addr/prefixlen
route命令:路由查看及管理
路由条目类型:
主机路由:目标地址为单个IP;
网络路由:目标地址为IP网络;
默认路由:目标为任意主机,0.0.0.0/0.0.0.0
查看:
[root@CentOS7 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 100 0 0 ens33
192.168.0.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0-nic
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
添加:
route add [-net] [-host] target [netmask Nm] [gw WG] [[dev] if]
实例:
[root@CentOS7 ~]# route add -net 10.0.0.0/8 gw 192.168.10.1 dev eth1
[root@CentOS7 ~]#route add default gw 192.168.10.1
删除:
route del [-net | -host] target [gw GW] [netmask Nm] [[dev] if]
实例:
[root@CentOS7 ~]# route del -net 10.0.0.0/8 gw 192.168.10.1
[root@CentOS7 ~]# route del default
netstat 命令:
显示路由表:netstat -rn
-r:显示内核路由表
-n:数字格式
显示网络连接:
netstat [--tcp | -t] [--udp | -u] [--udplite | -U] [--sctp | -S] [--raw | -w] [--listening | -l] [--all | -a] [--numeric | -n] [--extend | -e[--extend | -e]] [--program | -p]
-t:TCP协议的相关连接,连接均有其状态; FSM (Finate S);
-u:UDPF相关的连接
-w:raw socket相关的连接
-l:处于监听状态的连接
-a:所有状态
-n:以数字格式显示IP和port
-e:扩展格式
-p:显示相关的进程及PID
常用组合:
-tan, -uan, -tnl, -unl, -tunlp
传输层协议:
tcp:面向连接的协议;通信开始之前,要建立一个虚链路;通信完成后还要拆除连接;
udp:无连接的协议;直接发送数据报文;
显示接口的统计数据:
netstat {--interfaces|-I|-i} [--all|-a] [--extend|-e] [--verbose|-v] [--program|-p] [--numeric|-n]
所有接口:
netstat -i
指定接口:
netstat -I<网卡接口>
[root@CentOS7 ~]# netstat -Iens33
ifup / ifdown命令:
注意:通过配置文件/etc/sysconfig/network-scripts/ifcfg-ens33 来识别接口并完成配置;
实例:
ifup启用
ifdown禁用
[root@CentOS7 ~]# ifup virbr0-nic
[root@CentOS7 ~]# ifdown virbr0-nic
配置主机名:
hostname命令:
查看:hostname
配置:hostname HOSTNAME
当前系统有效,重启后无效;
hostnamectl命令:
hostnamectl status:显示当前主机名信息;
hostnamectl set-hostname:设定主机名,永久有效;
配置文件:
[root@centos6 ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=centos6
注意:此方法的设置不会立即生效;但以后会一直有效;
配置DNS服务器指向:
配置文件:/etc/resolv.conf
192.168.0.7 www.itxuezhe.com www itxuezhe
如何测试(host/nslookup/dig):
~]#dig -t A FQDN
FQDN --> IP
[root@centos6 ~]# dig -t A www.itxuezhe.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -t A www.itxuezhe.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34821
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.itxuezhe.com. IN A
;; ANSWER SECTION:
www.itxuezhe.com. 10 IN A 192.168.0.11
;; Query time: 0 msec
;; SERVER: 192.168.0.1#53(192.168.0.1)
;; WHEN: Sat Mar 16 01:06:35 2019
;; MSG SIZE rcvd: 50
~]#dig -x IP
IP --> FQDN
[root@centos6 ~]# dig -x 192.168.0.7
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -x 192.168.0.7
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 42942
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;7.0.168.192.in-addr.arpa. IN PTR
;; Query time: 6 msec
;; SERVER: 192.168.0.1#53(192.168.0.1)
;; WHEN: Sat Mar 16 01:08:37 2019
;; MSG SIZE rcvd: 42
[root@centos6 ~]# dig -x 192.168.0.7
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -x 192.168.0.7
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 42942
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;7.0.168.192.in-addr.arpa. IN PTR
;; Query time: 6 msec
;; SERVER: 192.168.0.1#53(192.168.0.1)
;; WHEN: Sat Mar 16 01:08:37 2019
;; MSG SIZE rcvd: 42
ip 命令:
https://blog.csdn.net/freeking101/article/details/68939059
https://www.cnblogs.com/diantong/p/9511072.html
ip [OPTIONS] OBJECT {COMMAND | help}
OBJECT = {link | addr | route | netns}
注意:OBJECT可简写,各OBJECT的子命令也可简写;
ip link set-change device attributes #设置更改设备属性
ip link set-change device attributes
dev NAME (default) : 指明要管理的设备,dev关键字可省略;
up和down
multicast on 或 multicast off :启用或禁用多播功能;
name NAME:重命名接口
mtu NUMBER:设置MTU的大小,默认为1500;
netns PID:ns为namespace,用于将接口移动到指定的网络名称空间;
ip link show -display device attributes
ip link help -显示简要使用帮助;
ip netns : ip - manage network namespaces.
ip netns list :列出所有的netns
ip netns add NAME : 创建指定的netns
ip netns exec NAME COMMAND :在指定的netns中运行命令
实例:
停止与激活网络设备
[root@Centos7ip11 ~]# ip link set ens345 up
[root@Centos7ip11 ~]# ip link set ens345 down
给网卡修改名字 要事先把网卡禁用
[root@Centos7ip11 ~]# ip link set virbr0 down
[root@Centos7ip11 ~]# ip link set virbr0 name ens345
ip address - protocol address management. #IP地址-协议地址管理
ip address add - add new protocol address
#IP地址添加-添加新协议地址
ip addr add IFADDR dev IFACE
label NAME:为额外添加的地址指明接口别名;
broadcast ADDRESS:广播地址;
[scope SCOPE_VALUE]:
global:全局可用;
link:接口可用;
host:仅本机可用;
实例:
查看ens345网卡的地址
[root@Centos7ip11 ~]# ifconfig ens345
ens345: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
**inet 192.168.10.10** netmask 255.255.255.0 broadcast 0.0.0.0
ether 52:54:00:83:57:ed txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
删除ens345网卡的地址
[root@Centos7ip11 ~]# ifconfig ens345 0
给ens345网卡添加地址
[root@Centos7ip11 ~]# ip addr add 192.168.10.10/24 dev ens345
ip address delete - delete protocol address
#IP地址删除-删除协议地址
ip addr delete IFADDR dev IFACE
实例:
查看ens345网卡的地址
[root@Centos7ip11 ~]# ip addr list ens345
3: ens345: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:83:57:ed brd ff:ff:ff:ff:ff:ff
inet 192.168.10.101/24 scope global ens345
valid_lft forever preferred_lft forever
inet 192.168.10.10/24 scope global secondary ens345
valid_lft forever preferred_lft forever
inet 192.168.10.20/24 scope global secondary ens345:0
valid_lft forever preferred_lft forever
删除ens345网卡的一个ip地址
[root@Centos7ip11 ~]# ip addr del 192.168.10.20/24 dev ens345
再次查看ens345网卡地址就少了一个
[root@Centos7ip11 ~]# ip addr list ens345
3: ens345: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:83:57:ed brd ff:ff:ff:ff:ff:ff
inet 192.168.10.101/24 scope global ens345
valid_lft forever preferred_lft forever
inet 192.168.10.10/24 scope global secondary ens345
valid_lft forever preferred_lft forever
ip address show - look at protocol addresses
#IP地址显示-查看协议地址
ip address flush - flush protocol addresses
#IP地址刷新-刷新协议地址
[root@Centos7ip11 ~]# ip addr list ens345
3: ens345: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:83:57:ed brd ff:ff:ff:ff:ff:ff
inet 192.168.10.101/24 scope global ens345
valid_lft forever preferred_lft forever
inet 192.168.10.10/24 scope global secondary ens345
valid_lft forever preferred_lft forever
删除ens345网卡上的ip地址
[root@Centos7ip11 ~]# ip addr flush dev ens345
[root@Centos7ip11 ~]# ifconfig ens345
ens345: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 52:54:00:83:57:ed txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ip route - routing table management
#IP路由-路由表管理
ip route add - add new route
#IP路由添加-添加新路由
ip route change - change route
#IP路由更改-更改路由
ip route replace - change or add new one
#IP路由替换-更改或添加新路由
实例:
~]# ip route add 192.168.0.0/24 ens345 via 192.168.10.100
~]# ip route add default via GW
ip route delete - delete route
#IP路由删除-删除路由
[root@Centos7ip11 ~]# ip route delete 192.168.1.0/24
ip route show - list routes
#IP路由显示-列出路由
ip route flush - fiush routing tables
#IP路由刷新-刷新路由表
ip route get-get a single route
#IP路由获取单个路由
ss命令
选项:
-t : TCP协议的相关连接
-u:UDP相关的连接
-w:raw socket相关的连接
-l:监听状态的连接
-a:所有状态的连接
-n:数字格式
-p:相关的程序及其PID
-e:扩展格式信息
-m:内存用量
-o:计时器信息
FILTER := [ state TCP-STATE ] [ EXPRESSION ]
TCP的常见状态:
TCP FSM:
LISTEN:监听
ESTABLISEHD:建立的连接
FIN_WAIT_1:
FIN_WAIT_2:
SYN_SENT:
SYN_RECV:
CLOSED:
EXPRESSION :
dport =
sport =
实例: '( dport = :22 or sport = :22 )'
[root@Centos7ip11 ~]# ss -tan '( dport = :22 or sport = :22 )'
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 :22 :*
ESTAB 0 52 192.168.0.11:22 192.168.0.8:51232
ESTAB 0 0 192.168.0.11:22 192.168.0.8:51817
LISTEN 0 128 :::22
配置文件: 通过配置文件修改网络属性;
ip地址 子网掩码 网关 dns 等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33
路由的相关配置文件:/etc/sysconfig/network-scripts/route-IFACE
配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE通过大量参数来定义接口的属性,其可通过vim等文本编辑器直接修改;也可以使用专用的命令进行修改(centos6 system-config-network (setup), centos 7: nmtui )
ifcfg-IFACE配置文件的参数: /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE:此配置文件对应的设备的名称;名称与ifcfg-ens33相同;
ONBOOT:在系统引导过程中,是否激活此接口;
UUID:此设备的唯一标识
IPv6INIT:是否初始化IPv6
BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp,bootp,static,none;
TYPE:接口类型,常见的有Ethernet,Bridge;
dns1:第一dns服务器指向;
dns2:备用dns服务器指向;
DOMAIN:dns搜索域;
IPADDR:ip地址;
NETMASK:子网掩码;
GATEWAY:默认网关;
USERCTL:是否允许普通用户控制此设备;
PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向覆盖本地手动指定的dns服务器指向;默认为允许;
HWADDR:设备的MAC地址;
NM_CONTROLLED:是否使用NetworkManager服务来控制接口;
网络服务:
network
NetworkManager
管理网络服务:
centos 6:service SERVICE { start | stop | restart | status }
centos 7:systemctl { start | stop | restart | status } SERVICE.service
配置文件修改之后,如果要生效,需要重启网络服务;
centos 6: ~]#service network restart
centos 7: ~]#systemctl restart network.service
用到非默认网关路由:/etc/sysconfig/network-scripts/route-IFACE
支持两种配置方式,但不可混用;
1.每行一个路由条目;
TAGET via GW
2.每三行一个路由条目;
ADDRESS#=TARGET
NETMASK#=MASK
GATEWAY#=NEXTHOP
给接口配置多个地址:
ip addr之外,ifconfig或配置文件都可以;
1.ifconfig IFACE_LABEL IPADDR/NETMASK
2.为别名添加配置文件;
DEVICE=IFACE_LABEL
BOOTPROTO:网上别名不支持动态获取地址;
nmcli命令:
[root@CentOS7 ~]# nmcli device show
来源:51CTO
作者:huyuwj
链接:https://blog.51cto.com/itxuezhe/2363753