一、网络基础知识大纲
1、知识体系:路由,交换,协议,OSI七层模型,TCP/IP协议和三次握手四次挥手过程,VLSM可変长子网。
2、网络:指将计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
网络拓扑:指用传输介质互联各种网络设备的物理布局。如果两个连接结构相同就可以认为其网络拓扑相同,尽管他们内部各自物理连线,节点间距可能不同。
3、交换机
3.1 交换机厂商:CISCO,H3C,DLINK。常见的:程控交换机,光纤交换机。
3.2 在一个交换机端口上所连接的所有终端设备,均在一个网段上(又称为一个广播域)。
3.3 交换机可以格力冲突域,每一个端口就是一个冲突域。
3.4 基本的安全功能
3.5 终端设别的的接入
3.6 广播域的隔离
4、路由器:连接各局域网和广域网的设备,负责设定路由和路由选择。路由:传递数据的路径。
4.1 路由协议,数据的转发
4.2 广播、组播控制
4.3 路由器会作为网关,一般会在网络出口的位置设置路由器。
4.4 广域网链路支持
5、协议:通信双方为了实现通信而设计的约定或通话规则,如:http协议,tcp/ip协议簇。
6、HUB总线技术
7、网络层次结构
8、OSI模型
8.1 网络层对应的是IP地址,是跨网段使用的;
8.2数据链路层对应的是MAC(物理)地址,是在局域网内使用的 ;
9、OSI网际互连和OSI封装解封装
10、TCP/IP 协议簇
10.1 TCP三次握手
什么是三次握手: 三次握手(Three-way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。
三次握手的目的 : 三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号并交换 TCP 窗口大小信息。客户端执行连接请求时。将触发三次握手。
SYN:请求同步标志,为1表示建立TCP连接; FIN:结束标志,为1表示关闭TCP连接; ACK:表示响应确认 ;
seq:表示序列号; ISN : Inital Sequence Number 初始序列号。 ack:acknowledgement Number,确认号
三次握手过程 :(三次握手可概括为:请求连接,收到应答,再次请求。SYN ---> SYN ---> ACK
第一次握手:客户端发送一个SYN标志位置1的请求包。包括客户端打算连接的服务器的端口,以及客户端的初始序列号Seq(ISN(c))=x(随机生成)。
第二次握手:服务器端发回一个确认包应答。包括SYN标志位和ACK标志位均置1,seq(ISN(s))=y(随机产生),确认ack=x+1。
第三次握手:客户端再次发送确认包。 包括SYN标志位为0,ACK标志位为1,seq(ISN(s))=x+1,确认号ack=y+1。。如果正确则连接建立成功,客户端和服务器进入ESTABLISHED状态,完成三次握手,随后客户端与服务器之间可以开始传输数据了。
10.2 TCP四次挥手
什么是四次挥手:TCP的连接的拆除需要发送四个包,因此称为四次挥手(four-way handshake)。客户端或服务器均可主动发起挥手动作,任何一方执行close操作即可产生挥手操作。
四次挥手过程:
第一次挥手: 客户端发送一个FIN=1,seq=u的包,用来发起关闭客户端到服务器数据传送操作,客户机进入FIN_WAIT_1状态。
第二次挥手:服务器收到包后,发送一个ACK=1给客户端,确认序号ack=u+1,序列号seq=v,服务器进入CLOSE_WAIT状态。
第三次挥手:服务器再发送一个FIN=1的包,确认序号ack=u+1,序列号seq=w,用来关闭服务器到客户端的数据传送操作,服务器进入LAST_ACK状态。
第四次挥手:客户端收到后,客户端进入TIME_WAIT状态,接着发送一个ACK=1给服务器,确认序号ack=w+1,序列号seq=u+1,服务器进入CLOSED状态,完成四次挥手。
二、IP分类
1、IP地址是由32位二进制数字构成,采用“点分十进制”方法表示的唯一地址。
2、通常区分如下: 五类IP ; 特殊用途的IP ; 私有IP;
3、IPV4简单粗暴地把IP地址分为五类。分类方法如下图所示:
也就是说,分为以下几类:
A: 0.0.0.0-127.255.255,其中段0和段127不可用,可用地址范围1.0.0.1.-127.255.255.254
B: 128.0.0.0-191.255.255.255,其中可用地址范围128.0.0.1-191.255.255.254
C: 192.0.0.0-223.255.255.255其中可用地址范围192.0.0.1-223.255.255.254
D: 224.0.0.0-239.255.255.255其中可用地址范围224.0.0.1-239.255.255.254,用作广播地址
E: 240.0.0.0-255.255.255.255,其中段255不可用,用作保留使用
其中除了段0和段127之外,还有一些IP地址因为有其他的用途,是不可以用作普通IP的。还有一部分被用作私有IP地址。
可用IP地址个数=2的N次方-2 , N表示主机位数,-2表示减去网络地址和广播地址。
2 、特殊用途的IP
将这些特殊的IP地址分为三类,特殊源地址、环回地址以及广播地址。如下表所示:
3、 私有IP(又称局域网IP)
公有地址(Public address),由Inter NIC(Internet Network Information Center 因特网信息中心)负责。这些IP地址分配给注册并向Inter NIC提出申请的组织机构。通过它直接访问因特网。
私有IP的出现是为了解决公有IP地址不够用的情况。从A、B、C三类IP地址中拿出一部分作为私有IP地址,这些IP地址不能被路由到Internet骨干网上,Internet路由器也将丢弃该私有地址。如果私有IP地址想要连至Internet,需要将私有地址转换为公有地址。这个转换过程称为网络地址转换(Network Address Translation,NAT),通常使用路由器来执行NAT转换。范围如下:
A: 10.0.0.0~10.255.255.255 即10.0.0.0/8
B:172.16.0.0~172.31.255.255即172.16.0.0/12
C:168.254.0.0~192.254.255.254 即168.254.0.0/16
D:192.168.0.0~192.168.255.255 即192.168.0.0/16
三、子网划分
1 为什么划分子网:
(1)避免大量局域网地址发送请求,造成网关设备负载过高
(2)避免广播风暴
(3)避免浪费IP地址
2、通过子网掩码的方式划分子网
可划分的子网数量=2的N次方,N为借用的主机位数。
四、DNS
1、DNS解析流程(熟练掌握)
2、DNS解析命令
dig @www.oldboy.com +trace
@<服务器地址>:指定进行域名解析的域名服务器;
-b
-f<文件名称>:指定dig以批处理的方式运行,指定的文件中保存着需要批处理查询的DNS任务信息;
-P:指定域名服务器所使用端口号;
-t<类型>:指定要查询的DNS数据类型;
-x
-4:使用IPv4;
-6:使用IPv6;
-h:显示指令帮助信息。
nslookup
host
ping
3.DNS的配置
配置文件: /etc/resolv.conf
setup设置DNS
如果有网卡的DNS配置,网卡的DNS配置会优先于配置文件 /etc/resolv.conf,重启网卡会把/etc/resolv.conf的配置覆盖掉;
如果没有网卡的DNS配置,配置文件 /etc/resolv.conf中的DNS会生效。
4.hostname配置
hostname [主机名] ,再执行logout #重启会失效
vim /etc/sysconfig/network #永久生效
vim /etc/hosts
setup修改主机名 #永久生效(命令行不会生效,会影响/etc/sysconfig/network 和/etc/hosts)
5.网关配置:
优先配置/etc/sysconfig/network-scripts/ifcfg-eth0,还可以选择/etc/sysconfig/network配置。
命令行配置,临时生效:route add/del default gw 10.0.0.254
6.IP配置:
ifconfig eth0 : X 192.168.1.111/24 up/down 配置/停用别名IP (虚拟IP),临时生效 ,若要永久生效写成配置文件。
ip的方式配置多个IP,辅助IP,ip addr add 192.168.1.111/24 dev eth1:3
ip add 查看辅助IP
7.网络信息查询
ip ifconfig route -n hostname netstat lsof (lsof -i :[端口] 查看某端口正在进行的服务)
8.网络状态检查
(1)ping www.example.com 检查线路是否通畅,对应ICMP协议(ping不通检查ICMP协议是否禁止)
(2)traceroute www.example.com 检查路由
(3)telnet www.example.com 80 检查服务有没有开,端口是否正常,防火墙是否禁止
不通的原因:服务未开启,端口未开启,防火墙阻挡,服务的端口不在该IP上,ISP运营商默认不开端口,申请开放。
9.抓包工具 linux系统:tcpdump nmap Windows系统:wireshark sniffer 科来网络分析