简述:在这里有关网络的基本原理不会详述,着重点在相关的命令以及操作上。会主要介绍网络管理的两大命令家族
ifcfg家族命令,ip家族命令
1.将linux主机装入到网络的要求
IP/MASK
路由:默认网关
DNS服务器:主DNS服务器
次DNS服务器
第三DNS服务器
主机名
2.配置方式
静态指定:
ifcfg家族:ifconfig,route
ip有子命令:{link,addr,route},ss,tt
直接编辑配置文件
前端图形化工具:system-config-network-tui(或者是用setup命令)
在CentOS7上传统工具依旧可用,但也会用下列新的命令:nmcli,nmtui
动态分配:
DHCP:Dynamic Host Configuration Protocol
配置网络接口
接口命令方式:
CentOS{5,6}
以太网:eth[0,1,2...]
ppp : ppp[1,2,...]
3.ifconfig命令
(1)
ifconfig [interface] # ifcoonfig -a # ifconfig IFACE [UP|DOWN]
(2)
ifconfig interface [aftype] options | address # ifconfig IFACE IP/MASK # ifconfig IFACE IP netmask MASK
注意:立即生效
(3)启用混杂模式:如果目标mac未指向自己,但仍然接受此报文进行分析,称为混杂模式
[-]promisc ("减"表示禁用)
4.route命令:路由管理命令
(1)查看:route -n
(2)添加:route add
route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
目标:192.168.1.3 网关:172.16.0.1 # route add -host 192.168.1.3 gw 172.16.0.1 dev eth0 设置默认路由,网关为172.16.0.1 # route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1 # route add default gw 172.16.0.1
(3)删除:route del
route del [-del|-host] target [gw Gw] [netmask Nm] [[dev] If] 目标:192.168.1.3 网关:172.16.0.1 # route del -host 192.168.1.3 目标:192.168.0.0 网关:172.16.0.1 # route del -net 192.168.0.0 -netmask 255.255.255.0
5.DNS服务器
配置文件:/etc/resolv.conf
nameserver DNS_SERVER_IP1
nameserver DNS_SERVER_IP2
nameserver DNS_SERVER_IP3
正解:FQDN —> IP
# dig -t A FQDN
# host -t A FQDN
反解:IP -> FQDN
# dig -x IP
# host -t PTR IP
6.netstat命令
netstat - Print network connections, routing tables, interface statistics,
masquerade connections, and multicast memberships
显示网络连接:
netstat [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]] [--program|-p] -t: tcp协议相关 -u: udp协议相关 -w: raw socket相关(裸套接字是不经过传输层,由应用层直接调用ip实现数据传输) -l: 处于监听状态 -a: 所有状态 -n: 以数字显示IP和端口; -e:扩展格式 -p: 显示相关进程及PID 常用组合:-tan, -uan, -tnl, -unl
显示路由表:
netstat {--route|-r} [--numeric|-n] -r: 显示内核路由表 -n: 数字格式
显示接口统计数据:
netstat {--interfaces|-I|-i} [iface] [--all|-a] [--extend|-e] [--program|-p] [--numeric|-n] # netstat -i # netstat -I IFACE
7.ip命令
ip - show / manipulate routing, devices, policy routing and tunnels
ip [ OPTIONS ] OBJECT { COMMAND | help } OBJECT := { link | addr | route }
(1)link OBJECT:
1)ip link - network device configuration
set dev IFACE 可设置属性: up and down:激活或禁用指定接口; show [dev IFACE]:指定接口 [up]:仅显示处于激活状态的接口
2)ip address - protocol address management
ip addr { add | del } IFADDR dev STRING [label LABEL]:添加地址时指明网卡别名 [scope {global|link|host}]:指明作用域 global: 全局可用; link: 仅链接可用; host: 本机可用; [broadcast ADDRESS]:指明广播地址
ip address show - look at protocol addresses [dev DEVICE] [label PATTERN] [primary and secondary]
ip address flush - flush protocol addresses 使用格式同show
3)ip route - routing table management
ip route add 添加路由:ip route add TARGET via GW dev IFACE src SOURCE_IP TARGET: 主机路由:IP 网络路由:NETWORK/MASK 添加网关:ip route add defalt via GW dev IFACE
ip route delete 删除路由:ip route del TARGET
ip route show
ip route flush [dev IFACE] [via PREFIX]
8.ss命令:
格式:ss [OPTION]... [FILTER]
选项:
-t: tcp协议相关
-u: udp协议相关
-w: 裸套接字相关
-x:unix sock相关
-l: listen状态的连接
-a: 所有
-n: 数字格式
-p: 相关的程序及PID
-e: 扩展的信息
-m:内存用量
-o:计时器信息
FILTER := [ state TCP-STATE ] [ EXPRESSION ]
EXPRESSION:
dport =
sport =
示例:’( dport = :ssh or sport = :ssh )’
TCP的常见状态: tcp finite state machine:
LISTEN: 监听
ESTABLISHED:已建立的连接
FIN_WAIT_1
FIN_WAIT_2
SYN_SENT
SYN_RECV
CLOSED
9.Linux网络属性配置: 修改配置文件
IP、MASK、GW、DNS相关配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
路由相关的配置文件:/etc/sysconfig/network-scripts/route-IFACE
(1)/etc/sysconfig/network-scripts/ifcfg-IFACE:
DEVICE:此配置文件应用到的设备;
HWADDR:对应的设备的MAC地址;
BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp;
NM_CONTROLLED:NM是NetworkManager的简写;此网卡是否接受NM控制;CentOS6建议为“no”;
ONBOOT:在系统引导时是否激活此设备;
TYPE:接口类型;常见有的Ethernet, Bridge;
UUID:设备的惟一标识;
IPADDR:指明IP地址;
NETMASK:子网掩码;
GATEWAY: 默认网关;
DNS1:第一个DNS服务器指向;
DNS2:第二个DNS服务器指向;
USERCTL:普通用户是否可控制此设备;
PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中;
(2)/etc/sysconfig/network-scripts/route-IFACE
两种风格:
(1) TARGET via GW
(2) 每三行定义一条路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GW
10.给网卡配置多地址:
ifconfig:
ifconfig IFACE_ALIAS
ip
ip addr add
配置文件:
ifcfg-IFACE_ALIAS
DEVICE=IFACE_ALIAS
注意:网关别名不能使用dhcp协议引导,因为dhcp引导式时根据的是MAC地址
11.配置当前主机的主机名:
# hostname [HOSTNAME]
配置文件 /etc/sysconfig/network
HOSTNAME=
12.网络接口识别并命名相关的udev配置文件:
/etc/udev/rules.d/70-persistent-net.rules
卸载网卡驱动:
modprobe -r e1000
装载网卡驱动:
modprobe e1000