# 自定规则

{% hint style="info" %}

* 编辑规则有风险，请勿在没完全搞懂的情况下，胡乱尝试
* 增加完成新规则后，<mark style="color:orange;">**重启MC插件才能生效**</mark>
* MC根据不同配置文件名设置不同的自定义规则，切换配置文件时自动切换
  {% endhint %}

<figure><img src="https://1927080012-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIbElCPWLUN7JiinF0Ycv%2Fuploads%2FV2T1bn6g4JWcZPZJGDQc%2F8.jpg?alt=media&#x26;token=b1fef954-4132-4cad-98f8-e162bf06eddd" alt=""><figcaption></figcaption></figure>

### <mark style="color:blue;">IPtables前置分流：</mark>

{% hint style="info" %}

* 本功能同【科学上网插件】原理相同，通过Iptables实现提前分流
* 对于ARM v7的路由设备，可以有效减轻CPU压力，详情请看 [**FAQ3**](https://mcreadme.gitbook.io/mc/faq/faq1#q3)
* 即使设置【<mark style="color:blue;">大陆IP绕行</mark>】/【<mark style="color:$primary;">强制绕行规则</mark>】，DNS解析服务依然会由Clash负责
* 本功能设置好后，需要<mark style="color:orange;">**重启MC插件**</mark>
  {% endhint %}

#### 大陆IP不经过内核：

使用 [**Fernvenue**](https://github.com/fernvenue/chn-cidr-list) 的大陆IP地址规则集前置分流，让大陆IP不进入Clash，从而减轻CPU压力

{% hint style="info" %}

* **Redir-Host模式下**，使用大陆IP地址规则集绕行MC
* **Fake-ip模式下**，需先匹配【[**DNS设置**](https://mcreadme.gitbook.io/mc/dns#dns-fang-an)】里的<mark style="color:blue;">fake-ip-filter</mark>名单绕行获取真实IP，然后才能匹配大陆IP规则集
* 大陆IP地址变动频率很低，没必要经常更新
  {% endhint %}

#### 自定义IPtables分流规&#x5219;**：**

<mark style="color:orange;">**编辑强制绕行规则**</mark>**：**&#x5C06;设定的域名/IP直接送出路由，不再经过Clash

<mark style="color:orange;">**编辑强制转发规则**</mark>**：**&#x5F3A;制将设定的域名/IP转发给Clash（是否翻墙还需要由<mark style="color:orange;">yaml配置文件</mark>/<mark style="color:orange;">代理组策略</mark>决定）

{% hint style="info" %}

* 规则列表支持<mark style="color:orange;">域名</mark>/<mark style="color:orange;">IP</mark>/<mark style="color:orange;">IP-CIDR</mark>，一行一个
* IP-CIDR规则IP末尾为0的时候，请写作1（判定语句小bug，不影响使用）

&#x20;     如：192.168.50.<mark style="color:orange;">0</mark>/24  请写成  192.168.50.<mark style="color:orange;">1</mark>/24
{% endhint %}

#### <mark style="color:blue;">自定义Clash规则：</mark>

#### 自定义规则模式：

<mark style="color:orange;">**简单模式**</mark>**：**&#x5FEB;速入手，通过简单选择/输入，快速添加规则

{% hint style="info" %}
简单模式需<mark style="color:$primary;">启动成功后</mark>才可以选择【类型】【连接方式】下拉菜单，添加规则，添加完成重启生效
{% endhint %}

<mark style="color:orange;">**专业模式**</mark>**：**&#x9002;合一次多条规则添加，自定义规则顶格写，不需要空格和“-”，一行一个规则，如：

```yaml
DOMAIN,abc.com.io,DIRECT
DOMAIN-SUFFIX,123.com,♻️ 手动切换
```

## <mark style="color:blue;">附：</mark>

部分常用规则类型说明，更多请查阅[MihomoWiki-路由规则](https://wiki.metacubex.one/config/rules/)

**DOMAIN-SUFFIX：目的域名后缀**

简单说明：设定浏览器等访问包含相关的域名后缀如何走规则

举例： <mark style="color:blue;">DOMAIN-SUFFIX,abc.com,国外网站</mark>

&#x20;           <mark style="color:blue;">DOMAIN-SUFFIX,123.abc.com,国外网站</mark>

| DOMAIN-SUFFIX |                                                                                                              包含                                                                                                              |               不包含               |
| :-----------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------: |
|    abc.com    |         <p>*.<mark style="color:orange;">abc.com</mark></p><p>*.<mark style="color:orange;">abc.com</mark>/*</p><p><mark style="color:orange;">abc.com</mark></p><p><mark style="color:orange;">abc.com</mark>/*</p>         |             123.com             |
|  123.abc.com  | <p>*.<mark style="color:orange;">123.abc.com</mark></p><p>*.<mark style="color:orange;">123.abc.com</mark>/*</p><p><mark style="color:orange;">123.abc.com</mark></p><p><mark style="color:orange;">123.abc.com</mark>/*</p> | <p>abc.com</p><p>abc.com/\*</p> |

**DOMAIN：目的域名**

简单说明：设定浏览器等访问的域名如何走规则

举例：<mark style="color:blue;">DOMAIN,abc.com,国外网站</mark>

&#x20;          <mark style="color:blue;">DOMAIN,123.abc.com,国外网站</mark>

|    DOMAIN   |                                                       包含                                                      |                                    不包含                                   |
| :---------: | :-----------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------: |
|   abc.com   |     <p><mark style="color:orange;">abc.com</mark></p><p><mark style="color:orange;">abc.com</mark>/\*</p>     |                    <p>*.abc.com</p><p>*.abc.com/\*</p>                   |
| 123.abc.com | <p><mark style="color:orange;">123.abc.com</mark></p><p><mark style="color:orange;">123.abc.com</mark>/\*</p> | <p>*.123.abc.com</p><p>*.123.abc.com/*</p><p>abc.com</p><p>abc.com/*</p> |

**DOMAIN-KEYWORD:目的域名关键词**

简单说明：设定浏览器等访问带有该关键字的域名如何走规则

举例：<mark style="color:blue;">DOMAIN-KEYWORD,abc,国外网站</mark>

| DOMAIN-KEYWORD |                                                                                                                                                                                                             包含                                                                                                                                                                                                            |   不包含   |
| :------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----: |
|       abc      | <p><mark style="color:orange;">abc</mark>.com</p><p>*<mark style="color:orange;">abc</mark>.com</p><p><mark style="color:orange;">abc</mark>*.com</p><p>*<mark style="color:orange;">abc</mark>*.com</p><p>*.<mark style="color:orange;">abc</mark>.com</p><p><mark style="color:orange;">abc</mark>.*.com</p><p>*.<mark style="color:orange;">abc</mark>.*.com</p><p>(注:<mark style="color:blue;">com</mark>为任意顶级域名)</p> | 123.com |

**SRC-IP-CIDR:来源IP地址**

简单说明：设定局域网内某设备如何走规则（IP地址必须有掩码位）

举例：<mark style="color:blue;">SRC-IP-CIDR,192.168.50.100/32,DIRECT</mark>

**IP-CIDR:目的IP地址**

简单说明：设定浏览器等访问的IP地址如何走规则

举例：<mark style="color:blue;">IP-CIDR,123.123.123.0/24,DIRECT</mark>

{% hint style="info" %}

* IP规则需遵循 [**IP-CIDR**](https://baike.baidu.com/item/%E6%97%A0%E7%B1%BB%E5%88%AB%E5%9F%9F%E9%97%B4%E8%B7%AF%E7%94%B1/15758573?fromtitle=CIDR\&fromid=3695195\&fr=aladdin) 格式，IP地址后面必须跟对应<mark style="color:orange;">掩码位</mark>；
* 例：123.123.0.0/<mark style="color:orange;">16</mark>  代表123.123.0.1\~123.123.255.254共65534个IP地址

&#x20;             123.0.0.0/<mark style="color:orange;">8</mark>      代表123.0.0.1\~123.255.255.254共16777214个IP地址

* 可借助 [**子网掩码计算器**](http://tool.chinaz.com/tools/subnetmask/) 辅助计算；
* 支持IPv6，如：IP-CIDR,2001:b28:f23f::/48,DIRECT。
  {% endhint %}

**SRC-PORT:来源端口**

简单说明：设定来源于局域网某端口的请求如何走规则

举例：<mark style="color:blue;">SRC-PORT,7777,DIRECT</mark>

**DST-PORT:目的端口**

简单说明：设定访问目的端口如何走规则

举例：<mark style="color:blue;">DST-PORT,8888,REJECT</mark>

{% hint style="info" %}

* 端口规则可使用 - 来匹配端口范围，使用 / 或者 , 来区分多个端口/端口范围，如

&#x20;      114-514/810-1919,65530
{% endhint %}


---

# 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://mcreadme.gitbook.io/mc/base/custom.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.
