通过西电的在线 MOOC 学习网络安全:
计算机网络
三种工作方式:
单工:数据只能在一个方向上传输
半双工:数据可以在两个方向上传输,但是一次只允许数据在一个方向传输
全双工:允许数据同时在两个方向上传输
IPv4 三类地址:
见:https://tools.ietf.org/html/rfc3330
A类地址
1.0.0.1-126.255.255.254
,第一段第一位二进制位以 0 开头,最后三段表示主机地址;B类地址
128.1.0.1-191.255.255.254
,第一段前两位二进制位为 10 开头,最后两段表示主机地址;C类地址
192.0.1.1-223.255.255.254
,第一段前三位二进制位为 110 开头,最后一段表示主机地址;D 类地址(群播地址) ,第一段前四位为 1110 开头。
IP 协议中的生存时间:
生存时间(TTL,time-to-live)是Internet协议(IP)包中的一个值,它告知路由器该包是否在网络中时间过长而应该被丢弃。
双绞线的双绞原因:
绞合可以减少对相邻导线的电磁干扰。
关于 10BASE-T
:
10 代表数据传输率,BASE 基带传输,T 代表双绞线。F 为光纤
网络冲突:
IEEE802.3
协议采用CSMA/CD
协议,一定会发生冲突;
802.4
和802.5
则不会。
路由选择协议:
RIP
协议:AS 内部的路由选择协议,采用距离向量算法,限制最大为 15 的跳度;
OSPF
协议:AS 内部的路由选择协议,采用 Dijkstra 路径选择算法;
BGP
协议:AS 之间的路由选择协议,同样使用距离向量算法,但是传输信息中包含了AS-PATH
,因此不会出现环路问题。
SOCKET 编程:
服务端代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
from socket import * HOST = 'localhost' PORT = 21567 BUFFERSIZE = 1024 ADDR = (HOST, PORT) tcpServerSocket = socket(AF_INET, SOCK_STREAM) tcpServerSocket.bind(ADDR) # 绑定地址(主机名,端口号) tcpServerSocket.listen(5) # 开始监听TCP while True: print 'waiting for connection...' # 被动接受TCP客户端的请求到来,阻塞式 tcpClientSocket, addr = tcpServerSocket.accept() print 'connected from:' + str(addr) while True: data = tcpClientSocket.recv(BUFFERSIZE) if not data: break # 发送TCP数据 tcpClientSocket.send('%s' % data) tcpClientSocket.close() tcpServerSocket.close()
客户端代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
from socket import * HOST = 'localhost' PORT = 21567 BUFFERSIZE = 1024 ADDR = (HOST, PORT) tcpClientSocket = socket(AF_INET, SOCK_STREAM) tcpClientSocket.connect(ADDR) # 连接到服务器 while True: data = raw_input('>') if not data: break tcpClientSocket.send(data) data = tcpClientSocket.recv(BUFFERSIZE) if not data: break print data tcpClientSocket.close()
码分多址通信(CDMA):
码分多址( Code Division Multiple Access,CDMA)是通过编码区分不同用户信息,实现不同用户同频、同时传输的一种通信技术。
https://blog.csdn.net/huanhuan_Coder/article/details/83012467
虚电路:
虚电路表示这只是一条 逻辑上的连接 ,分组都沿着这条逻辑连接按照存储转发方式传送,而 并不是真正建立了一条物理连接 。包括建立连接,传输数据,拆除连接三个阶段。建立连接之后就类似于专线,所以不存在路由选择
五层数据封装的名称:
- 应用层,Message,报文;
- 传输层,Segment,报文段;
- 网络层,Datagram,数据报;
- 链路层,Frame,帧;
- 物理层,Bits,比特。
以太网帧长度的限制:
在传统以太网中,有最小帧长度和最大帧长度的限制。
以太网的帧长度总是在一定范围内浮动,一般最大的帧长是 1518 字节,最小的帧长是 64 字节。在实际应用中,帧的大小是由设备的 MTU(最大传输单位)即设备每次能够传输的最大字节数自动来确定的。
网络协议的三要素:
语法 用来规定信息格式;数据及控制信息的格式、编码及信号电平等。
语义 用来说明通信双方应当怎么做;用于协调与差错处理的控制信息。
定时 (时序)定义了何时进行通信,先讲什么,后讲什么,讲话的速度等。比如是采用同步传输还是异步传输!
常见广域网:
几种常用的广域网:公用电话交换网(PSTN)、分组交换网(X.25)、数字数据网(DDN)、帧中继(FR)、交换式多兆位数据服务(SMDS)和异步传输模式(ATM)。
波特率:
波特率,可以通俗的理解为一个设备在一秒钟内发送(或接收)了多少码元的数据。
局域网广播地址:
主机号为全 1,表示广播地址
TCP/UDP
常见端口的服务:
见:http://tool.oschina.net/commons?type=7 与 https://www.jianshu.com/p/048963e312bc
常见数据库所在端口:
mysql sqlserver server sqlserver monitor oracle postgre sql oracle emctl oracle xdb oracle xdb ftp 3306 1433 1434 1521 5432 1158 8080 2100
TCP/IP
协议族以及其安全隐患
网络按范围分类:LAN、WAN。
计算机协议的三要素:语法、语义和协议。
协议数据封装:
|
|
ARP
协议
ARP
协议的安全隐患,主要有三类:ARP
窃听、ARP
欺骗(ARP
污染,黑洞攻击)、GARP
滥用攻击。
ARP
协议安全隐患的防御技术,主要有四类:采用静态绑定的方式防止 ARP
欺骗(Windows & Linux 都可以使用 arp
命令操作其映射表)、采用 ARP
代理服务器、在网络设备上对 ARP
消息进行检测和控制、禁用 GARP
功能(主机可以选择性地忽略 GARP
消息)。
IP
协议
IP
协议的安全隐患,主要有三类:IP
窃听、IP
地址假冒攻击、IP
碎片攻击。
IP
协议的安全防御方法:入口过滤、出口过滤、IP 溯源。
TCP
协议
TCP
协议的特点:全双工连接、面向连接、可靠性、面向字节流的协议。
TCP
协议的安全隐患:SYN
泛洪攻击、ACK
泛洪攻击、序列号预测攻击、LAND
攻击(使服务器建立自连接)。
UDP
协议
UDP
协议的特点:无连接的协议、不可靠的协议、不保序协议。
UDP
协议的安全隐患:假冒、劫持、泛洪
HTTP
协议
HTTP
协议的特点:是一个基于请求与响应模式的、无状态的应用层协议;常基于 TCP 的连接方式;绝大多数 WEB 应用都是构建在 HTTP 协议之上。
HTTP
请求消息格式组成:请求行、消息报头、请求正文。
HTTP
相应消息格式组成:初始状态行、首部行、实体主体。
HTTP
协议的安全隐患,主要有两种攻击:钓鱼攻击和跨站脚本攻击。