# Network Protocols Explained (ESP)

<details>

<summary><strong>从零开始学习AWS黑客技术，成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE（HackTricks AWS红队专家）</strong></a><strong>！</strong></summary>

支持HackTricks的其他方式：

* 如果您想看到您的**公司在HackTricks中做广告**或**下载PDF格式的HackTricks**，请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
* 获取[**官方PEASS & HackTricks周边产品**](https://peass.creator-spring.com)
* 探索[**PEASS家族**](https://opensea.io/collection/the-peass-family)，我们独家的[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品
* **加入** 💬 [**Discord群**](https://discord.gg/hRep4RUj7f) 或 [**电报群**](https://t.me/peass) 或 **关注**我们的**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**。**
* 通过向[**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享您的黑客技巧。

</details>

### 多播DNS（mDNS）

**mDNS**协议旨在在没有专用名称服务器的小型本地网络中进行IP地址解析。它通过在子网内进行多播查询来促使具有指定名称的主机响应其IP地址。然后，子网中的所有设备可以使用此信息更新其mDNS缓存。

需要注意的关键点：

* **域名放弃**：主机可以通过发送TTL为零的数据包释放其域名。
* **使用限制**：mDNS通常仅解析以\*\*.local\*\*结尾的名称。在此域中与非mDNS主机的冲突需要进行网络配置调整。
* **网络详细信息**：
* 以太网多播MAC地址：IPv4 - `01:00:5E:00:00:FB`，IPv6 - `33:33:00:00:00:FB`。
* IP地址：IPv4 - `224.0.0.251`，IPv6 - `ff02::fb`。
* 在UDP端口5353上运行。
* mDNS查询限于本地网络，不会跨越路由器。

### DNS-SD（服务发现）

DNS-SD是一种通过查询特定域名（例如，`_printers._tcp.local`）来发现网络上的服务的协议。响应包括所有相关域，例如在此情况下可用的打印机。可以在[此处](http://www.dns-sd.org/ServiceTypes.html)找到服务类型的全面列表。

### SSDP（简单服务发现协议）

SSDP促进了网络服务的发现，主要由UPnP使用。它是一种使用UDP的基于文本的协议，使用多播寻址。对于IPv4，指定的多播地址是`239.255.255.250`。SSDP的基础是[HTTPU](https://en.wikipedia.org/wiki/HTTPU)，这是HTTP的UDP扩展。

### 设备的Web服务（WSD）

连接到网络的设备可以通过Web服务（WSD）识别可用的服务，如打印机。这涉及广播UDP数据包。寻找服务的设备发送请求，而服务提供者宣布其提供的服务。

### OAuth 2.0

OAuth 2.0是一种协议，促进了用户信息的安全、选择性共享。例如，它使服务能够从Google访问用户数据而无需多次登录。该过程涉及用户身份验证，用户授权，以及Google生成令牌，允许服务访问指定用户数据。

### RADIUS

RADIUS（远程身份验证拨号用户服务）是主要由ISP使用的网络访问协议。它支持身份验证、授权和计费。用户凭据由RADIUS服务器验证，可能包括网络地址验证以增加安全性。身份验证后，用户获得网络访问，并跟踪其会话详细信息以进行计费和统计目的。

### SMB和NetBIOS

#### SMB（服务器消息块）

SMB是用于共享文件、打印机和端口的协议。它直接通过TCP（端口445）或通过TCP上的NetBIOS（端口137、138）运行。这种双重兼容性增强了与各种设备的连接。

#### NetBIOS（网络基本输入/输出系统）

NetBIOS管理资源共享的网络会话和连接。它支持设备的唯一名称和多个设备的组名称，从而实现定向或广播消息传递。通信可以是无连接的（无确认）或面向连接的（基于会话）。虽然NetBIOS传统上在诸如IPC/IPX之类的协议上运行，但它通常在TCP/IP上使用。NetBEUI是一个相关协议，以其速度而闻名，但由于广播而非常冗长。

### LDAP（轻量级目录访问协议）

LDAP是一种协议，允许在TCP/IP上管理和访问目录信息。它支持各种操作来查询和修改目录信息。主要用于访问和维护分布式目录信息服务，允许与设计用于LDAP通信的数据库进行交互。

### Active Directory（AD）

Active Directory是一个网络可访问的数据库，包含用户、组、特权和资源等对象，便于对网络实体进行集中管理。AD将其数据组织成域的分层结构，可以包含服务器、组和用户。子域允许进一步分段，每个子域可能维护自己的服务器和用户群。这种结构集中管理用户，授予或限制对网络资源的访问。可以进行查询以检索特定信息，如联系方式，或定位域内的资源，如打印机。

<details>

<summary><strong>从零开始学习AWS黑客技术，成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE（HackTricks AWS红队专家）</strong></a><strong>！</strong></summary>

支持HackTricks的其他方式：

* 如果您想看到您的**公司在HackTricks中做广告**或**下载PDF格式的HackTricks**，请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
* 获取[**官方PEASS & HackTricks周边产品**](https://peass.creator-spring.com)
* 探索[**PEASS家族**](https://opensea.io/collection/the-peass-family)，我们独家的[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品
* **加入** 💬 [**Discord群**](https://discord.gg/hRep4RUj7f) 或 [**电报群**](https://t.me/peass) 或 **关注**我们的**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**。**
* 通过向[**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享您的黑客技巧。

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hacktricks.xsx.tw/generic-methodologies-and-resources/pentesting-network/network-protocols-explained-esp.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
