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