Skip to content

Commit

Permalink
doc: reorganize
Browse files Browse the repository at this point in the history
  • Loading branch information
sjtuross committed Apr 15, 2022
1 parent 593d9b0 commit bb703e1
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 6 deletions.
4 changes: 2 additions & 2 deletions BUILD.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ cd iptables-1.8.3
make && make install
```

📝 编译之后so文件在extensions子目录中
📝 编译之后so文件在`/spksrc/toolchain/syno-apollolake-7.0/work/iptables-1.8.3/extensions`目录中

iptables v1.6.0,适用于syno-apollolake-6.2.3,请自行调整

Expand All @@ -119,4 +119,4 @@ cd iptables-1.6.0
make && make install
```

📝 编译之后so文件在extensions子目录中
📝 编译之后so文件在`/spksrc/toolchain/syno-apollolake-6.2.3/work/iptables-1.6.0/extensions`目录中
52 changes: 48 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ iptables v1.8.3 (legacy)
| apollolake | 4.4.59+ | v1.6.0 | DS918+ | 6.2.3-25426 |
| broadwell | 3.10.105 | v1.6.0 | DS3617xs | 6.2.3-25426 |
| bromolow | 3.10.105 | v1.6.0 | DS3615xs | 6.2.3-25426 |
| geminilake | 4.4.180+ | v1.8.3 | DS920+ | 7.1-42661 |

## 安装并尝试加载

Expand All @@ -40,12 +41,42 @@ iptables v1.8.3 (legacy)

⚠️ Windows用户注意,模块文件名是区分大小写的,大写的为标记模块,小写的为匹配模块,它们之间是相辅相成的,切勿彼此覆盖。

以下以DS3617xs 6.2.3-25426为例,尝试加载透明代理所需的ko内核模块
运行`sudo -i`之后再运行以下`insmod`命令尝试加载ko内核模块。由于模块互相有依赖性,需按一定顺序加载,有些是系统自带的模块。如果提示`File Exists`,说明已经加载,如果没有提示,说明加载成功

由于模块互相有依赖性,需按一定顺序加载,有些是系统自带的模块。如果提示`File Exists`,说明已经加载,如果没有提示,说明加载成功。
<details>
<summary>4.X内核</summary>

```bash
insmod /lib/modules/nfnetlink.ko
insmod /lib/modules/ip_set.ko
insmod /lib/modules/ip_set_hash_ip.ko
insmod /lib/modules/xt_set.ko
insmod /lib/modules/ip_set_hash_net.ko
insmod /lib/modules/xt_mark.ko
insmod /lib/modules/xt_connmark.ko
insmod /lib/modules/xt_comment.ko
insmod /lib/modules/xt_TPROXY.ko
insmod /lib/modules/xt_socket.ko
insmod /lib/modules/iptable_mangle.ko
insmod /lib/modules/textsearch.ko
insmod /lib/modules/ts_bm.ko
insmod /lib/modules/xt_string.ko
```

```bash
insmod /lib/modules/nf_nat_ipv6.ko
insmod /lib/modules/nf_nat_masquerade_ipv6.ko
insmod /lib/modules/ip6t_MASQUERADE.ko
insmod /lib/modules/ip6table_nat.ko
insmod /lib/modules/ip6table_raw.ko
insmod /lib/modules/ip6table_mangle.ko
```

</details>
<details>
<summary>3.X内核</summary>

```bash
sudo -i
insmod /lib/modules/nfnetlink.ko
insmod /lib/modules/ip_set.ko
insmod /lib/modules/ip_set_hash_ip.ko
Expand All @@ -58,11 +89,24 @@ insmod /lib/modules/nf_tproxy_core.ko
insmod /lib/modules/xt_TPROXY.ko
insmod /lib/modules/xt_socket.ko
insmod /lib/modules/iptable_mangle.ko
insmod /lib/modules/textsearch.ko
insmod /lib/modules/ts_bm.ko
insmod /lib/modules/xt_string.ko
```

```bash
insmod /lib/modules/nf_nat_ipv6.ko
insmod /lib/modules/ip6t_MASQUERADE.ko
insmod /lib/modules/ip6table_nat.ko
insmod /lib/modules/ip6table_raw.ko
insmod /lib/modules/ip6table_mangle.ko
```

</details>

📝 运行`lsmod`查看已加载的内核模块列表,或运行`dmesg | tail`查看加载失败的原因。

⚠️ 不同内核版本netfilter编译生成的ko内核模块可能不完全一样。比如,`nf_tproxy_core.ko`模块只有3.X内核才会有,`nf_nat_masquerade_ipv6.ko`模块只有4.X内核才会有。
📝 不同内核版本netfilter编译生成的ko内核模块可能不完全一样。比如,`nf_tproxy_core.ko`模块只有3.X内核才会有,`nf_nat_masquerade_ipv6.ko`模块只有4.X内核才会有。

📝 为了群晖重启之后自动加载所需的内核模块,参考[通用模块加载的方法](https://github.com/sjtuross/syno-iptables/wiki/通用模块加载的方法)

Expand Down

0 comments on commit bb703e1

Please sign in to comment.