ifconfig:接口及地址查看和管理
IPV4:IP地址查看,修改。
格式1:ifconifg [INTERFACE]
常用:#ifconfig -a 显示所有接口,包括inactive状态的接口;
格式2 :inconfig interface [aftype] options | address...
常用:#ifconfig IFACE IP/MASK [up|down] 临时冒接口设定IP地址跟子网掩码
#ifconfig IFACE IP netmask NETMASK
注:ifconfig 立即送往内核中的TCP/IP协议栈,并生效;
ifconfig IFACE options
oprions: [-]promisc 混杂模式
IPC6:IP地址查看,修改
add addr/prefixlen 添加
del addr/prefixlen 删除
route命令:路由查看及管理
路由条目的类型:
主机路由:目标地址为单个IP;
网络路由:目标地址为IP网络;
默认路由: 目标为人以网络0.0.0.0/0.0.0.0
查看路由: #route -n
添加路由: route add [-net|-host] tareget [netmask Nm] [gw GW] [[dev] if]
例:route add -net 10.0.0.0/8 gw 192.168.10.1 dev eth1 添加 访问的网段,自己的网关
route add -net 0.0.0.0/.0.0.0.0 gw 192.168.10.1
#route add default gw 192.16.10.1 默认路由
删除路由:
route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]
例:删除路由信息:#route del -net 10.0.0.0/8 gw 192.168.10.1
#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 State Machine);
-u:UDP相关的连接
-w:raw socket相关的连接
-l:处于监听状态的连接
-a:所有状态
-n:以数字格式显示IP和Port;
-e:扩展格式
-p:显示相关的进程及PID;
显示接口统计数据:netstat {--interfaces|-I|-i} [iface] [--all|-a] [--extend|-e] [--verbose|-v] [--program|-p] [--numeric|-n]
所有接口:netstat -i
指定接口:netstat -I <IFACE>
ifup/ifdown命令:开机关闭网卡
注意:通过配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE来识别接口并完成配置;
hostname命令:配置主机名
查看:hostname
配置:hostname HOSTNAME
当前有效,重启后无效;
配置文件:etc/sysconfig/network
HOSTNAME=<HOSTNAME>
注意:此方法的设置不会立即生效; 但以后会一直有效;
hostnamectl命令(Centos7)
hostnamectl status:显示当前主机名信息;
hostnamectl set-hostname:设定主机名,永久有效;
配置DNS服务器指向:
配置文件:vim /etc/resolv.conf
nameserver DNS_SERVER_IP 最多添加三个服务器
如何测试(host/nslookup/dig):
# dig -t A FQDN(主机名)
FQDN --> IP
# dig -x IP
IP --> FQDN
iproute命令:
ip命令:ip [ OPTIONS ] OBJECT { COMMAND | help }
OBJECT := { link | addr | route | netns }
注: OBJECT可简写,各OBJECT的子命令也可简写;
ip OBJECT:
ip link: network device configuration (完成网络设备配置)
ip link set - change device attributes 修改设备属性
dev NAME (default):指明要管理的设备,dev关键字可省略;
up和down: 例: #ip link set eth1 down 关闭eth1接口
multicast on或multicast off:启用或禁用多播功能;
name NAME:重命名接口
例: # ip link set eth1 down
# ip link set eth1 name eth123
ss命令:
ss [options] [ FILTER ]
选项:
-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)'
~]# ss -tan '( dport = :22 or sport = :22 )'
~]# ss -tan state ESTABLISHED
配置文件:
IP/NETMASK/GW/DNS等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
IFACE:接口名称;
路由的相关配置文件:/etc/sysconfig/networkj-scripts/route-IFACE
配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE通过大量参数来定义接口的属性;其可通过vim等文本编辑器直接修改,也可以使用专用的命令的进行修改(CentOS 6:system-config-network (setup),CentOS 7: nmtui)
ifcfg-IFACE配置文件参数:
DEVICE:此配置文件对应的设备的名称;
ONBOOT:在系统引导过程中,是否激活此接口;
UUID:此设备的惟一标识;
IPV6INIT:是否初始化IPv6;
BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp、bootp、static、none;
TYPE:接口类型,常见的有Ethernet, Bridge;
DNS1:第一DNS服务器指向;
DNS2:备用DNS服务器指向;
DOMAIN:DNS搜索域;
IPADDR: IP地址;
NETMASK:子网掩码;CentOS 7支持使用PREFIX以长度方式指明子网掩码;
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) 每行一个路由条目:
TARGET via GW
(2) 每三行一个路由条目:
ADDRESS#=TARGET
NETMASK#=MASK
GATEWAY#=NEXTHOP
给接口配置多个地址:
ip addr之外,ifconfig或配置文件都可以;
(1) ifconfig IFACE_LABEL IPADDR/NETMASK
IFACE_LABEL: eth0:0, eth0:1, ...
(2) 为别名添加配置文件;
DEVICE=IFACE_LABEL
BOOTPROTO:网上别名不支持动态获取地址;
static, none
nmcli命令:
nmcli [ OPTIONS ] OBJECT { COMMAND | help }
device - show and manage network interfaces
COMMAND := { status | show | connect | disconnect | delete | wifi | wimax }
connection - start, stop, and manage network connections
COMMAND := { show | up | down | add | edit | modify | delete | reload | load }
modify [ id | uuid | path ] <ID> [+|-]<setting>.<property> <value>
如何修改IP地址等属性:
# nmcli conn modify IFACE [+|-]setting.property value
ipv4.address
ipv4.gateway
ipv4.dns1
ipv4.method
manual