1.linux网络基础
网络的重要性:所有的系统都有网络!我们的生活已经离不开网络。运维生涯50%的生产故障都是网络故障!
2:教室这么多的电脑如何上网的?
网卡(mac地址)有线(双绞线传播电信号)双向,同时收发无线(无线电波) 发的时候,不能收
交换傻瓜交换机(tplink/dlink/水星...)程控交换机(配置管理,可控 思科、华为、华三)
路由(双网卡)内网卡---交换机 192.168.11.0/24(192.168.11.1~192.168.11.254)外网卡---运营商 122.71.227.79(铁通) 宽度拨号
查公网ip的方法:windows,打开浏览器,访问百度,搜IP即可linux:curl ifconfig.me
扩展:高级路由器还有上网行为管理器和防火墙功能哦
论坛:鸿鹄论坛(网络工程师)
3:osi 7层模型分层的作用: 复用 (堆积木 七巧板)
手机生产厂商:组装手机最终产品,7层手机cpu 高通 联发科 麒麟手机屏幕 三星,京东方,LG手机主板 厂商自己设计手机电池 锂电池(天能)手机扬声器 杜比音效,xxxx手机摄像头 索尼,三星
网络工程师:物理层 1层,通信介质的信号到数字信号(二进制0101)转换数据链接层 2层 局域网之间计算机通信 通过mac地址(物理网卡)通信网络层 3层 IP地址,路由(通过公网ip来访问全世界)公网ip 具体的门牌号(绝对唯一)私网ip 家里的房间号(相对唯一)
传输层 4层 tcp/udp tcp(可靠,速度慢) udp(不可靠,速度快) 端口(让不同的应用程序,同时使用网络)
服务端使用的固定端口号,客户端使用随机端口号(支持多开)
开发工程师:会话层 5层 控制发包的数据表示层 6层 文件格式应用层 7层 应用程序使用SSH FTP HTTP ntp
对运维来说,重中之重的协议:tcp协议
4:tcp/ip协议 5层物理层数据链路层网络层传输层应用层
一个数据包分成2部分,一个控制层面的数据,一个是应用层面的数据:控制层面只占一小部分,数据层面才占用大部分!
5:数据封装,解封装,数据传输过程应用层---》数据传输层---》tcp报头+数据网络层---》ip包+tcp报头+数据数据链接层===》数据帧+ip包+tcp报头+数据物理层===》将完整的数据包,由二进制转换成电信号
最重要的协议协议:6:tcp三次握手,四次挥手tcp协议在传输数据的时候,需要先进行三次握手,传输上三层数据,四次挥手
tcp的标识:SYN:建立链接 ACK:回应标识FIN 断开链接PSH 数据包URG 紧急指针RST 重置(重传)
tcp的三次握手
1.客户端向服务端发起带有SYN标识的包,seq=x;
2.服务端向客户端回应带有SYN,ACK标识的包,seq=y,ack=x+1;
3.客户端向服务端发起带有ACK标识的确认包,seq=x+1,ack=y+1。
1.客户端向服务端发起带有FIN,ACK标识的包,seq=x,ack=y,
2.服务端向客户端回应带有ACK标识的包,seq=y,ack=x+1,
3.服务端再次向客户端发起带有FIN,ACK标识的包,seq=y,ack=x+1,
4.客户端向服务端发起带有ACK标识的回应包,seq=x+1,ack=y+1.
tcp的数据传输过程:
tcpdump -i eth0 port 80 -nn -S-i 指定网卡port 指定端口号 http 80;ftp 21 ;ssh 22;telnet 23;smtp 25 ;dns udp53 ;ntp udp 123
tcpdump r
抓tcp某端口的数据包
-n 不解析IP地址-nn 不解析IP地址和端口号 -c 指定抓第几行-S 不把随机序列号和确认序列号解析成绝对值-i 指定网卡名称-w 另存为当前目录下的文件tcpdump -i eth0 tcp port 21 -nn
tcpdump -i eth0 port 80 -c 10 -S
抓udp某端口的数据包tcpdump -i eth0 udp port 53 -nn抓icmp的数据包tcpdump -i eth0 icmp -nn
tcpdump抓的包,wireshark分析找同学给我发送一个用tcpdump,ssh协议的三次握手包文件xxx.cap
ip地址划分
ip地址由32位二进制组成.
什么是二进制?010110进制0-910
2进制0-110
二进制1100 ==1X2^3+1X2^2+0X2^1+0X2^0 =12
十进制1560 ==1x10^3+5x10^2+6x10^1+0x10^0 =1560
ip地址:实际上是32位二进制数(01100100.00000100.00000101.00000110)100.4.5.60.0.0.0~255.255.255.255
a类 1.0.0.1~126.255.255.254第一组:1-126开头的地址是A类 0<A类<127 128b类 128.0.0.1~191.255.255.254 128<=B类<192 64
c类 192.0.0.1~223.255.255.254
d类 组播,VRRP协议,keepalive高可用 224
e类 科研
私有ip地址范围:局域网地址:A 10.0.0.0~10.255.255.25565536*256 == 16,777,216
B 172.16.0.0~172.31.255.25565536*16= 1,048,576
C 192.168.0.0~192.168.255.25565536
127.0.0.0~127.255.255.255 本地回环地址,保留地址0.0.0.0 === 任意的目的地255.255.255.255 ===
0.0.0.0 ~ 255.255.255.255 == 256256256*256 = 4,294,967,296 42亿为了缓解ipv4地址不够用的问题1:ipv6 fe80::2e60:cff:fe9c:a4b3 操作系统,硬件设备
2: NAT network address 转换好处:a:节约大量的公网ip地址b:减少了网络攻击
8:子网掩码的作用:决定一个网段的大小(可用ip数量的多少)
192.168.11.0/24 === 192.168.11.0 netmask 255.255.255.0
11111111 11111111 11111111 00000000
192.168.11.0/24 === 192.168.11.0 netmask 255.255.255.0192.168.11.0 网络号192.168.11.1 起始地址192.168.11.254 结束地址192.168.11.255 广播地址
同一个网段的ip地址,才能直接相互通信,不同网段的ip地址,需要路由器才能相互通信!
192.168.11.0/25 === 192.168.11.0 netmask 255.255.255.128
11000000,10101000,00001011,011000000,10101000,00001011,00000000 192.168.11.0 网络号
11000000,10101000,00001011,01111111 192.168.11.127 广播地址11111111,11111111,11111111,10000000 255.255.255.128
192.168.11.128/25 === 192.168.11.128 netmask 255.255.255.12811000000,10101000,00001011,1000000011111111,11111111,11111111,1000000011000000,10101000,00001011,111000000,10101000,00001011,10000000 192.168.11.128 网络号
11000000,10101000,00001011,11111111 192.168.11.255 广播地址
a:红蜘蛛广播b: 限制无线路由器的ip的数量子网掩码的值192.168.1.0/28
c: 运营商的固定ip数限制电信给了我一个公网ip
9:dns解析流程dns:domain name system域名系统
百度:111.13.100.92腾讯:199.22.22.22网易:123.55.22.66......
dns服务器:把域名解析成ip地址
域名:baidu.comdns服务器:baidu.com 119.22.22.22
dns服务:udp 53端口ssh服务:tcp 22端口http服务:tcp 80端口
能上qq,打不开网站,一定是dns问题(你的电脑中毒了)
描述:打开浏览器输入blog.oldboyedu.com地址之后回车,网站的打开流程?1)把blog.oldboyedu.com解析成公网ip地址2)浏览器使用它的公网ip访问blog.oldboyedu.com的网站服务器http
dns记录的类型:qstack.comA 类型 ip地址CNAME 把你的域名解析到另一个域名 为网站添加cdnMX 解析邮箱地址 解析到另一个域名,由另一个域名提供ip来解析NS nameserver dns.qstack.com NS == name server 授权dnsdns.qstack.com 111.222.22.33
dns的命令digdig @223.5.5.5 www.baidu.com +tracedig www.baidu.com
nslookupnslookup www.oldboyedu.com
hosthost www.oldboyedu.com
10: arp协议arp 数据链路层ARP(Address Resolution Protocol)把ip地址解析成mac地址
arp要注意的a:arp欺骗b:如果局域网规模太大,广播风暴
11:tcpdump抓包tcpdump -i eth0 port 80 -nn -S-i 指定网卡port 指定端口号 http 80;ftp 21 ;ssh 22;telnet 23;smtp 25 ;dns udp 53 ;ntp udp 123
tcpdump -i eth0 icmp -n-n 不把ip解析成主机名-nn 不把端口解析成应用层协议-S 不把随机序列和确认序列解析成绝对值
-c 指定抓包的数量
tcpdump -i eth0 port 80 -c 10 -S
抓tcp某端口的数据包tcpdump -i eth0 tcp port 21 -nn抓udp某端口的数据包tcpdump -i eth0 udp port 53 -nn抓icmp的数据包tcpdump -i eth0 icmp -nn