mirror of
https://github.com/ZSCNetSupportDept/website.git
synced 2025-10-28 00:45:03 +08:00
1
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -20,3 +20,6 @@ yarn-debug.log*
|
|||||||
yarn-error.log*
|
yarn-error.log*
|
||||||
|
|
||||||
/docs/wiki/gitignore
|
/docs/wiki/gitignore
|
||||||
|
|
||||||
|
|
||||||
|
/draft
|
||||||
|
|||||||
@@ -29,36 +29,44 @@
|
|||||||
|
|
||||||
HTTP协议,是`HyperText Transfer Protocol`的缩写,即"超文本传输协议"。是通过网络在电脑之间进行文件传输的默认协议。进行HTTP文件传输的双方,一个称之为”客户端“(Client),一个称之为"服务端"(Server)。
|
HTTP协议,是`HyperText Transfer Protocol`的缩写,即"超文本传输协议"。是通过网络在电脑之间进行文件传输的默认协议。进行HTTP文件传输的双方,一个称之为”客户端“(Client),一个称之为"服务端"(Server)。
|
||||||
|
|
||||||
我们刚才就是在我们的电脑上部署了HTTP服务端,而浏览器就是我们通信中的客户端.一次完整的HTTP协议由客户端请求(Request)和服务端响应(Response)组成。**在HTTP协议中,总是由客户端先发起一次HTTP请求,然后由服务端返回这次请求的响应,这样才是一次完整的HTTP通信。**
|
我们刚才就是在我们的电脑上部署了HTTP服务端,而浏览器就是我们通信中的客户端。浏览器首先对服务器发送信息(行话叫做"请求"),要求获取某个文件;然后服务器返回这个文件(行话叫做“响应”)。
|
||||||
|
|
||||||
|
一次完整的HTTP协议总是由客户端请求(Request)和服务端响应(Response)组成。在HTTP协议中,总是由客户端先发起一次HTTP请求,然后由服务端返回这次请求的响应,这样才是一次完整的HTTP通信。
|
||||||
|
|
||||||
|
实际上,HTTP协议中的“客户端”不仅仅是指浏览器,但我们通常用的浏览器确实就是最常见的HTTP客户端。但其实像curl这样的命令行工具,或者手机APP,或者是浏览器里的JavaScript代码,当它们向服务器请求数据时,也可以被称作客户端。
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
|
||||||
HTTP协议不仅可以获取一个文件(就像我们所做的),也可以向服务端上传一个文件,或是修改服务端目录下某个文件的内容...
|
实际上,HTTP协议不仅可以获取一个文件(就像我们所做的),也可以向服务端上传一个文件,或是修改服务端目录下某个文件的内容...
|
||||||
|
|
||||||
一次HTTP通信要进行什么操作(获取or上传等),由HTTP通信的“方法”指定,方法是请求头的一部分。
|
一次HTTP通信要进行什么操作(获取or上传等),由HTTP请求中的“方法”指定,方法是"请求头"的一部分。
|
||||||
|
|
||||||
下面我们介绍HTTP协议的具体内容:
|
"请求头"是什么?别着急,下面我们介绍HTTP协议的具体内容:
|
||||||
|
|
||||||
### 请求
|
### 请求
|
||||||
前面说了,HTTP通信总是以客户端发送请求开始,服务端是没法主动给客户端发信息的。
|
前面说了,HTTP通信总是以客户端发送请求开始,服务端是没法主动给客户端发信息的。
|
||||||
|
|
||||||
一个HTTP请求包含请求头(HTTP Request Header)和请求体(Request Body),请求头主要包含了:
|
一个HTTP请求包含请求头(HTTP Request Header)和请求体(Request Body),请求头主要包含了:
|
||||||
|
|
||||||
|
- 协议版本:告诉服务器,这次交流,要使用哪个版本的HTTP协议
|
||||||
- 目标:要访问哪个电脑,例如刚才的`123.45.67.89`
|
- 目标:要访问哪个电脑,例如刚才的`123.45.67.89`
|
||||||
- URI:要操作哪个文件,例如`example.docx`,IP地址或者网址后面的内容就是URI了
|
- URI:要操作哪个文件,例如`example.docx`,IP地址或者网址后面的内容就是URI了
|
||||||
- 方法:要对这个文件做什么,比如获取这个文件的内容还是在服务器上创建这个文件
|
- 方法:要对这个文件做什么,比如获取这个文件的内容,还是在服务器上创建这个文件
|
||||||
- User-Agent:说明客户端是什么(是一个浏览器,还是命令行工具,还是爬虫?)
|
- 自定义参数:除了上面的信息,客户端还可以发送一些额外的内容给服务端,这些内容总是以`Key=Value`的形式存在。在正常的URI后有一个`?`,表示参数的开始,`&`表示不同参数之间的分隔。
|
||||||
- 自定义参数:除了上面的需要传输的标准内容,客户端还可以发送一些自定义的内容给服务端,这些内容总是以`Key=Value`的形式存在。
|
|
||||||
|
|
||||||
举个例子,百度的搜索接口是`GET http://baidu.com/s`,要传递搜索内容到这个接口中,需要通过URL参数`wd`。如果你想用百度搜索东西,可以在地址栏里面输入`http://baidu.com/s?wd=你要搜的东西`,这就是URL参数的意义:向服务器传递一些自定义信息。
|
例如:`http://123.45.67.89/example.docx?compressed=true&method=gzip`
|
||||||
|
|
||||||
参数的内容不是HTTP标准,也就是服务端如何理解参数完全靠程序员写的代码。比如谷歌的用户搜索接口就是`GET http://google.com/search?q=你要搜的东西`。
|
这就是让服务器压缩发来的文件,使用gzip压缩。
|
||||||
|
|
||||||
|
|
||||||
|
参数的内容不是HTTP标准,也就是服务端如何理解参数,完全靠程序员写的代码。如果程序员没有设置,那么参数就毫无用处。
|
||||||
|
|
||||||
#### HTTP方法
|
#### HTTP方法
|
||||||
HTTP方法定义了这个请求具体要对指定的文件做什么,其中:
|
HTTP方法定义了这个请求具体要对指定的文件做什么,其中:
|
||||||
- `GET`:获取指定文件的内容。
|
- `GET`:获取指定文件的内容。
|
||||||
- `POST`:上传一个文件,内容放在请求体(下面会讲到)
|
- `POST`:上传一个文件,内容放在请求体(下面会讲到)。
|
||||||
|
- `DELETE`:删除某个文件。
|
||||||
|
|
||||||
其实这里还有一些方法的,我们以后讲。
|
其实这里还有一些方法的,我们以后讲。
|
||||||
|
|
||||||
@@ -69,7 +77,7 @@ HTTP方法定义了这个请求具体要对指定的文件做什么,其中:
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
##### 请求体
|
#### 请求体
|
||||||
|
|
||||||
对于某些方法,需要在请求时向服务器夹带一些东西(比如POST需要你带上新文件的内容),请求体就是装载这些东西的.
|
对于某些方法,需要在请求时向服务器夹带一些东西(比如POST需要你带上新文件的内容),请求体就是装载这些东西的.
|
||||||
|
|
||||||
@@ -79,11 +87,10 @@ HTTP方法定义了这个请求具体要对指定的文件做什么,其中:
|
|||||||
|
|
||||||
浏览器虽然正常情况下没法做出GET外的请求,但是浏览器在控制台里是可以自定义请求的,以`Firefox`为例,在F12的`Network`一栏中点`New Request`(有一个加号)就可以发送自定义请求。`curl`等HTTP命令行工具也可以发送请求.
|
浏览器虽然正常情况下没法做出GET外的请求,但是浏览器在控制台里是可以自定义请求的,以`Firefox`为例,在F12的`Network`一栏中点`New Request`(有一个加号)就可以发送自定义请求。`curl`等HTTP命令行工具也可以发送请求.
|
||||||
|
|
||||||
实际上,HTTP协议中的“客户端”不仅仅是指浏览器,我们通常用的浏览器就是最常见的客户端,但其实像curl这样的命令行工具,或者手机APP,或者是浏览器里的JavaScript代码,当它们向服务器请求数据时,也扮演着客户端的角色。
|
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### HTTP的响应
|
### 响应
|
||||||
回应也分为回应头和回应体,回应头主要包含:
|
回应也分为回应头和回应体,回应头主要包含:
|
||||||
- 状态码:针对请求的回应有对应的状态,比如,如果GET请求没有问题,成功返回的话就返回`200 OK`状态码,如果找不到请求里对应的文件就会返回`404 Not Found`
|
- 状态码:针对请求的回应有对应的状态,比如,如果GET请求没有问题,成功返回的话就返回`200 OK`状态码,如果找不到请求里对应的文件就会返回`404 Not Found`
|
||||||
- 内容格式:向浏览器说明回应体(若有)是什么格式的,文本文件的编码设置等,比如html文件?图片?docx文档?有没有被压缩?如果有,压缩格式?这决定了浏览器如何对待这些文件
|
- 内容格式:向浏览器说明回应体(若有)是什么格式的,文本文件的编码设置等,比如html文件?图片?docx文档?有没有被压缩?如果有,压缩格式?这决定了浏览器如何对待这些文件
|
||||||
@@ -93,7 +100,7 @@ HTTP方法定义了这个请求具体要对指定的文件做什么,其中:
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
#### 一个例子
|
### 例子
|
||||||
`GET`方法从服务器获得一个资源,我们在浏览器的地址栏输入一个地址时,就是在对这个URI做`GET`请求,前面的例子也是通过`GET`方法来进行的。
|
`GET`方法从服务器获得一个资源,我们在浏览器的地址栏输入一个地址时,就是在对这个URI做`GET`请求,前面的例子也是通过`GET`方法来进行的。
|
||||||
|
|
||||||
比如,发送`GET http://developer.zsxyww.com/test/test.txt`,那么就会把我们服务器根目录上`test`文件夹里面的`test.txt`这个文件发过来
|
比如,发送`GET http://developer.zsxyww.com/test/test.txt`,那么就会把我们服务器根目录上`test`文件夹里面的`test.txt`这个文件发过来
|
||||||
@@ -115,7 +122,7 @@ HTTP在网络上是明文传输的,也就是说客户端和服务器之间的
|
|||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### 网页与HTML
|
## 网页与HTML
|
||||||
|
|
||||||
随着网络的发展,人们发现互联网的潜力远不止于传输文件。特别是浏览器的普及,人们希望能直接在网页上展示丰富的信息,而不只是把浏览器当作下载工具。前面我们说过了,浏览器可以直接展示txt文件,但是最大的问题是,txt文件是没有样式的。
|
随着网络的发展,人们发现互联网的潜力远不止于传输文件。特别是浏览器的普及,人们希望能直接在网页上展示丰富的信息,而不只是把浏览器当作下载工具。前面我们说过了,浏览器可以直接展示txt文件,但是最大的问题是,txt文件是没有样式的。
|
||||||
|
|
||||||
@@ -152,3 +159,4 @@ HTTP在网络上是明文传输的,也就是说客户端和服务器之间的
|
|||||||
:::
|
:::
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,8 @@
|
|||||||
|
|
||||||
import DocsCard from '@site/src/components/wiki_menu/index';
|
import DocsCard from '@site/src/components/wiki_menu/index';
|
||||||
import DocsCardList from '@site/src/components/wiki_menu/index';
|
import DocsCardList from '@site/src/components/wiki_menu/index';
|
||||||
|
|
||||||
# 网络维护科wiki
|
# 网络维护科wiki
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
你好呀!
|
你好呀!
|
||||||
|
|
||||||
这里是中山学院网络维护科wiki,记录了我们网络维护工作的知识📝
|
这里是中山学院网络维护科wiki,记录了我们网络维护工作的知识📝
|
||||||
|
|||||||
@@ -12,14 +12,24 @@ description: 如何通过对线来测试网线工作情况,与如何利用对
|
|||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
寻线器的“对线”功能也叫线序测试(Wiremap),用于检查一根网线(或网络链路)的内部8芯线对的连接情况和品质。
|
寻线器的“对线”功能也叫线序测试(Wiremap),用于检查网络链路内部8芯线对的连接情况和品质。
|
||||||
## 操作流程
|
|
||||||
1. **连接线缆两端**: 将待测试网线的一端连接到发射器的RJ45端口,另一端连接到接收器的RJ45端口。如果是墙线等网络链路的话,就只用连接发射器即可。
|
如果我们要使用对线功能,一般是如下情况:
|
||||||
|
|
||||||
|
1. **检查一段网络线路物理层是否正常(比如用户端口到交换机)**
|
||||||
|
|
||||||
|
2. **检查某根网线是不是工作正常**
|
||||||
|
|
||||||
|
我们先来讲对线网线的操作:
|
||||||
|
|
||||||
|
## 网线的对线:操作流程
|
||||||
|
1. **连接线缆两端**: 将待测试网线的一端连接到发射器的RJ45端口,另一端连接到接收器的RJ45端口。
|
||||||
|
|
||||||
2. **开启对线模式**: 将发射器的功能选择开关拨到“对线”档位。
|
2. **开启对线模式**: 将发射器的功能选择开关拨到“对线”档位。
|
||||||
|
|
||||||
3. **观察并解读指示灯**: 此时,发射器和接收器上的8个线序指示灯(分别对应1-8号线芯)会开始闪烁。你需要对比两端的亮灯情况来判断线路状态。
|
3. **观察并解读指示灯**: 此时,发射器和接收器上的8个线序指示灯(分别对应1-8号线芯)会开始闪烁。你需要对比两端的亮灯情况来判断线路状态。
|
||||||
## 网线的对线测试
|
|
||||||
|
### 闪烁情况
|
||||||
网络链路可能会有如下情况:
|
网络链路可能会有如下情况:
|
||||||
|
|
||||||
- **正常**:如果是标准的直通线(T568B或T568A),发射器和接收器上的1到8号指示灯会一一对应、同步、依次快速闪烁。这是最理想的状态。
|
- **正常**:如果是标准的直通线(T568B或T568A),发射器和接收器上的1到8号指示灯会一一对应、同步、依次快速闪烁。这是最理想的状态。
|
||||||
@@ -31,10 +41,13 @@ description: 如何通过对线来测试网线工作情况,与如何利用对
|
|||||||
- **乱序/错线**(Miswire):线序接乱了,表现为发射端和接收端指示灯的闪烁顺序不一致(例如,发射器上是1-2-3-4...,而接收器上是1-3-2-4...),需要重做水晶头。
|
- **乱序/错线**(Miswire):线序接乱了,表现为发射端和接收端指示灯的闪烁顺序不一致(例如,发射器上是1-2-3-4...,而接收器上是1-3-2-4...),需要重做水晶头。
|
||||||
|
|
||||||
- **交叉** (Crossover): 如果是交叉线,指示灯会按照交叉的配对规则亮起(如1对3,2对6等)。
|
- **交叉** (Crossover): 如果是交叉线,指示灯会按照交叉的配对规则亮起(如1对3,2对6等)。
|
||||||
## 排查
|
|
||||||
对线只能说明寻线器到信号发射设备(楼层交换机,宿舍路由器等)的整体线路有没有问题,如果有问题,对线操作本身无法测出是哪一个部分有问题,这个时候,就需要我们进行系统的方法测试排查
|
|
||||||
|
|
||||||
### 流程
|
## 物理线路的排查
|
||||||
|
对于物理线路的排查,其实和测试网线差不多。最重要的是,需要知道某些网络设备(如路由器,交换机等)可以视为寻线器的接收端。如果网线一端连接发射端,另一端连接路由器或交换机。那么在正常工作的情况下,发射端就会像网线那样正常亮起。在这里不需要使用寻线器的接收端。
|
||||||
|
|
||||||
|
### 系统地排查
|
||||||
|
这种方法只能说明寻线器到信号发射设备(楼层交换机,宿舍路由器等)的整体线路有没有问题,如果有问题,对线操作本身无法测出是哪一个部分有问题,这个时候,就需要我们进行系统的方法测试排查:
|
||||||
|
|
||||||
下面是理想情况下校园网的结构,在实际工作中,每个片区我们只需要接触到其中的一部分:
|
下面是理想情况下校园网的结构,在实际工作中,每个片区我们只需要接触到其中的一部分:
|
||||||
```mermaid
|
```mermaid
|
||||||
|
|
||||||
|
|||||||
@@ -20,20 +20,24 @@ description: 如何寻线,即已知网线的一端,找到网线的另一端
|
|||||||
|
|
||||||
香晖的机房有一个床位表,记录了机房的哪个端口对应了哪个宿舍的床位,但是其它地方是没有这个表的,那该怎么确定一个宿舍床位端口对应的是机房的哪个配线架端口呢?
|
香晖的机房有一个床位表,记录了机房的哪个端口对应了哪个宿舍的床位,但是其它地方是没有这个表的,那该怎么确定一个宿舍床位端口对应的是机房的哪个配线架端口呢?
|
||||||
|
|
||||||
寻线器可以帮助我们确定这件事,这篇文章将为你介绍寻线器的原理和用法。
|
寻线器可以帮助我们确定这件事,这篇文章将为你介绍寻线器是如何使用的。
|
||||||
|
|
||||||
## 认识寻线器
|
## 操作步骤
|
||||||
|
|
||||||
截至目前,网维所配备的寻线器大部分是精明鼠的268,我们基于这种寻线器来讲解:
|
1. 连接发射器: 将你需要寻找的网线一端(比如用户的网线)从设备上拔下,然后插入到寻线仪发射器的RJ45端口中。
|
||||||
|
|
||||||
<!--  -->
|
2. 开启寻线模式: 将发射器的功能选择开关拨到“寻线”档位。此时,状态指示灯会闪烁,表示信号已经开始发送。
|
||||||
|
|
||||||
寻线器由一对设备组成,一个比较矮胖的,一个比较瘦高的,矮胖的那个是“发射端”,瘦高的是“接收端”
|
3. 手持接收器开始寻找: 前往线缆的另一端,手持接收器,将接收器的探头逐一扫过每一根可能的线缆。
|
||||||
|
|
||||||
|
4. 根据声音定位目标: 当接收器的探头接触到带有信号的目标网线时,你会听到清晰且连续的“嘀嘀嘀”声。你可以通过接收器上的音量调节旋钮来控制音量大小。声音最响亮、最稳定的那一根,就是你要找的目标网线。
|
||||||
|
|
||||||
## 操作流程
|
5. 最终确认: 为了100%确认,可以将疑似目标线缆从线束中稍微拉出一点,单独用接收器再测一次,如果声音依然强烈,就把这根线缆拔下来,插到接收器的端口里,如果这个时候接收器8灯同时亮起且很大声地响起,那就找到了。
|
||||||
|
|
||||||
下面介绍具体使用寻线器的方法:
|
寻线时通常采用先粗略,后精确的策略:先把寻线器灵敏度调到最高,这样就算离目标很远也会响,这样我们可以确定目标所在的大致的范围。然后逐步调小灵敏度,缩小搜索圈,直到确定那根线缆是你的目标~
|
||||||
|
|
||||||
打开寻线器,将寻线器的发射端接到需要寻线的一端,调到寻线挡,将接收端带去弱电井,如果接收端靠近对应的线的话,就会发出响声,将灵敏度调到最高,确定大致范围,再逐渐调低,同时缩小范围,最后找到对应的线\
|
## 技巧
|
||||||
接收端也有一个端口,如果你觉得可能是哪一个线,就把那个线拔下来插到端口里面,来确定你的猜想是否正确,如果确实是发射端插的那根线的话,8个灯会全亮并且大声滴滴。
|
|
||||||
|
- 接收器拥有极为先进的3.5mm耳机孔:zany:,如果机房噪音比较大或者有人投诉声音打扰了他们的话可以找个耳机插上去寻线。
|
||||||
|
|
||||||
|
- 接收器还有手电筒,可以帮助你照亮交换机端口。在朝晖那里很有用,但是亮度可能不如手机的好。
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
# 科普
|
# 科普
|
||||||
一些科普文章
|
一些科普文章
|
||||||
|
|
||||||
|
|
||||||
*请选择一个板块查看:*
|
*请选择一个板块查看:*
|
||||||
|
|
||||||
import DocCardList from '@theme/DocCardList';
|
import DocCardList from '@theme/DocCardList';
|
||||||
|
|||||||
@@ -68,7 +68,6 @@ linkStyle 6,7 stroke:#FFF,stroke-width:0;
|
|||||||
|
|
||||||
是的,不过我们学校的网络套餐最高只有千兆,所以这个问题在我们学校没有太大意义;不过下次如果你在用千兆网卡的轻薄本访问NAS或者用超千兆宽带的时候,不妨尝试一下用转接器!
|
是的,不过我们学校的网络套餐最高只有千兆,所以这个问题在我们学校没有太大意义;不过下次如果你在用千兆网卡的轻薄本访问NAS或者用超千兆宽带的时候,不妨尝试一下用转接器!
|
||||||
|
|
||||||
|
|
||||||
## 手机
|
## 手机
|
||||||
基本上你的安卓手机只要不是太老和太丐版,都支持使用转接器连接以太网,在手机设置里搜索一下“以太网”,看看有没有对应选项。如果支持以太网的话,可以在值班的时候带上一个转接器,用你的手机来调试端口。就不用把用户的电脑带过去机房了,转接器推荐买上面说的那两个千兆型号,因为这是市面上使用最广泛的两个型号,兼容性是最好的。
|
基本上你的安卓手机只要不是太老和太丐版,都支持使用转接器连接以太网,在手机设置里搜索一下“以太网”,看看有没有对应选项。如果支持以太网的话,可以在值班的时候带上一个转接器,用你的手机来调试端口。就不用把用户的电脑带过去机房了,转接器推荐买上面说的那两个千兆型号,因为这是市面上使用最广泛的两个型号,兼容性是最好的。
|
||||||
|
|
||||||
@@ -90,7 +89,7 @@ linkStyle 6,7 stroke:#FFF,stroke-width:0;
|
|||||||
|
|
||||||
千兆或以上的转接器通常都有“协商”的机制,就是检查网络链路中速度最低的那个环节和所有设备的双工性,然后向下兼容到那个设备的速度和双工性;
|
千兆或以上的转接器通常都有“协商”的机制,就是检查网络链路中速度最低的那个环节和所有设备的双工性,然后向下兼容到那个设备的速度和双工性;
|
||||||
|
|
||||||
比如你的转接器是千兆的,套餐是千兆的,到交换机的墙线质量也足够支持千兆,但是你用了运营商送的那种劣质网线,网线最高支持100M,那么转接器就会在100M的速度下工作;这就像转接器和其它设备一起合作,协商出一个大家都可以支持的速度。
|
比如你的转接器是千兆的,套餐是千兆的,到交换机的墙线质量也足够支持千兆,但是你用了运营商送的那种劣质网线,网线最高支持100M,那么转接器就会在100M的速度下工作;这就像转接器和网络的其它部分一起合作,协商出一个大家都可以支持的速度。
|
||||||
|
|
||||||
我们推荐的两款转接器都是有10M/100M/1000M三种模式的速度,自动协商合适的速度的。在极少数情况下,协商机制可能会导致联网失败,这个时候就需要手动禁用协商:
|
我们推荐的两款转接器都是有10M/100M/1000M三种模式的速度,自动协商合适的速度的。在极少数情况下,协商机制可能会导致联网失败,这个时候就需要手动禁用协商:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user