当前位置: 首页 > news >正文

[开端]网络运维常用命令

一、网络运维常用命令

1、window 查看本机ip

ipconfig 

2、linux查看本机ip

ifconfig

3、测试网络 通不通用 ping

ping  127.0.0.1

4、测试一个端口通不通

telnet 127.0.0.1 80

5、查看本机的上网IP

curl ifconfig.me

6、查看域名的公网IP

ping 域名

7、window路由追踪

tracert www.google.com

8、linux路由追踪

traceroute 127.0.0.1

9、linux抓包命令

sudo tcpdump -i eth0 port  端口

10、linux  ping 拼装的报文

ping -s 1460 -M do 127.0.0.1

11、linux查看防火墙

  1. iptables(Linux):
    • 功能:用于配置Linux系统的防火墙规则,控制进出网络的数据包。
    • 用法:通过命令行界面添加、删除或修改防火墙规则。

12、DNS查询

. Nslookup/Dig

功能:DNS查询工具,用于查询域名解析信息。

使用场景:排查DNS解析问题,验证DNS配置。

nslookup google.com  # Windows
dig google.com       # Linux/MacOS

二、tcp的三次握手和四次挥手详解

TCP是面向连接的协议,它基于运输连接来传送TCP报文段,TCP运输连接的建立和释放,是每一次面向连接的通信中必不可少的过程。

TCP运输连接有以下三个阶段:

  • 建立TCP连接,也就是通过三报文握手来建立TCP连接。
  • 数据传送,也就是基于已建立的TCP连接进行可靠的数据传输。
  • 释放连接,也就是在数据传输结束后,还要通过四报文挥手来释放TCP连接。

TCP的运输连接管理就是使运输连接的建立和释放都能正常的进行。

第一次握手

客户端向服务器发出连接请求报文,这时报文首部中的同部位SYN=1,同时随机生成初始序列号 seq=x,此时,TCP客户端进程进入了 SYN-SENT(同步已发送状态)状态。TCP规定,SYN报文段(SYN=1的报文段)不能携带数据,但需要消耗掉一个序号。这个三次握手中的开始。表示客户端想要和服务端建立连接。

第二次握手

TCP服务器收到请求报文后,如果同意连接,则发出确认报文。确认报文中应该 ACK=1,SYN=1,确认号是ack=x+1,同时也要为自己随机初始化一个序列号 seq=y,此时,TCP服务器进程进入了SYN-RCVD(同步收到)状态。这个报文也不能携带数据,但是同样要消耗一个序号。这个报文带有SYN(建立连接)和ACK(确认)标志,询问客户端是否准备好。

第三次握手

TCP客户进程收到确认后,还要向服务器给出确认。确认报文的ACK=1,ack=y+1,此时,TCP连接建立,客户端进入ESTABLISHED(已建立连接)状态。

TCP规定,ACK报文段可以携带数据,但是如果不携带数据则不消耗序号。这里客户端表示我已经准备好。

数据传输过程

4次挥手过程

第一次挥手

TCP发送一个FIN(结束),用来关闭客户到服务端的连接。

客户端进程发出连接释放报文,并且停止发送数据。释放数据报文首部,FIN=1,其序列号为seq=u(等于前面已经传送过来的数据的最后一个字节的序号加1),

此时,客户端进入FIN-WAIT-1(终止等待1)状态。 TCP规定,FIN报文段即使不携带数据,也要消耗一个序号。

第二次挥手

服务端收到这个FIN,他发回一个ACK(确认),确认收到序号为收到序号+1,和SYN一样,一个FIN将占用一个序号。

服务器收到连接释放报文,发出确认报文,ACK=1,ack=u+1,并且带上自己的序列号seq=v,此时,服务端就进入了CLOSE-WAIT(关闭等待)状态。

TCP服务器通知高层的应用进程,客户端向服务器的方向就释放了,这时候处于半关闭状态,即客户端已经没有数据要发送了,但是服务器若发送数据,客户端依然要接受。

这个状态还要持续一段时间,也就是整个CLOSE-WAIT状态持续的时间。

客户端收到服务器的确认请求后,此时,客户端就进入FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文(在这之前还需要接受服务器发送的最后的数据)。

第三次挥手

服务端发送一个FIN(结束)到客户端,服务端关闭客户端的连接。

服务器将最后的数据发送完毕后,就向客户端发送连接释放报文,FIN=1,ack=u+1,由于在半关闭状态,服务器很可能又发送了一些数据

假定此时的序列号为seq=w,此时,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认。

第四次挥手

客户端发送ACK(确认)报文确认,并将确认的序号+1,这样关闭完成。

客户端收到服务器的连接释放报文后,必须发出确认,ACK=1,ack=w+1,而自己的序列号是seq=u+1,此时,客户端就进入了TIME-WAIT(时间等待)状态。

注意此时TCP连接还没有释放,必须经过2∗∗MSL(最长报文段寿命)的时间后,当客户端撤销相应的TCB后,才进入CLOSED状态。

服务器只要收到了客户端发出的确认,立即进入CLOSED状态。同样,撤销TCB后,就结束了这次的TCP连接。可以看到,服务器结束TCP连接的时间要比客户端早一些。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 衡石科技BI的API如何授权文档解析
  • 基于微信小程序靓丽内蒙古APP(源码+定制+辅导)
  • SSRF漏洞与redis未授权访问的共同利用
  • 【案例58】WebSphere输出日志输出慢导致线程被阻塞
  • Windows安装nexus 私服仓库(6)
  • 【性能优化】:探索系统瓶颈的根源(一)
  • Modern restaurant - building and interior (餐厅场景)
  • linux命令 sudo and su
  • 【开发笔记】Notepad++配置
  • 【C++】模拟(例题 学习)
  • 什么三维点云(3D Point Cloud)和其他数据的区别
  • 一文读懂大语言模型:基础概念篇
  • Labview获取LK-G3001数据
  • 动态规划篇-代码随想录算法训练营第三十六天l 279.完全平方数,139.单词拆分,多重背包问题
  • c++面向对象编程
  • 【RocksDB】TransactionDB源码分析
  • 【剑指offer】让抽象问题具体化
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • Javascript基础之Array数组API
  • JAVA之继承和多态
  • Js基础知识(四) - js运行原理与机制
  • Linux链接文件
  • Netty源码解析1-Buffer
  • SAP云平台里Global Account和Sub Account的关系
  • 从零开始在ubuntu上搭建node开发环境
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 微信公众号开发小记——5.python微信红包
  • 翻译 | The Principles of OOD 面向对象设计原则
  • #Datawhale AI夏令营第4期#AIGC文生图方向复盘
  • #define,static,const,三种常量的区别
  • #微信小程序(布局、渲染层基础知识)
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • (02)Unity使用在线AI大模型(调用Python)
  • (70min)字节暑假实习二面(已挂)
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (rabbitmq的高级特性)消息可靠性
  • (二)十分简易快速 自己训练样本 opencv级联lbp分类器 车牌识别
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (篇九)MySQL常用内置函数
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (一)RocketMQ初步认识
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • ***利用Ms05002溢出找“肉鸡
  • .gitignore
  • .net core 外观者设计模式 实现,多种支付选择
  • ::
  • @angular/cli项目构建--Dynamic.Form
  • @KafkaListener注解详解(一)| 常用参数详解
  • @Transactional类内部访问失效原因详解
  • [ 物联网 ]拟合模型解决传感器数据获取中数据与实际值的误差的补偿方法
  • [AIGC] 使用Curl进行网络请求的常见用法
  • [asp.net core]project.json(2)
  • [Avalon] Avalon中的Conditional Formatting.