更新 README.md
This commit is contained in:
parent
6a3c6db404
commit
7f3ae64de5
99
README.md
99
README.md
@ -450,105 +450,8 @@ iptables -L FORWARD -n -v --line-numbers
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 10. 常见问题说明
|
|
||||||
|
|
||||||
### 10.1 为什么 127.0.0.1:18101 测不通?
|
## 当前状态总结
|
||||||
|
|
||||||
例如:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
curl -I http://127.0.0.1:18101
|
|
||||||
```
|
|
||||||
|
|
||||||
失败是正常的。
|
|
||||||
|
|
||||||
原因是当前使用的是 `iptables PREROUTING` 转发规则,该规则主要处理外部进入本机的流量。
|
|
||||||
本机访问 `127.0.0.1` 属于回环流量,不经过 `PREROUTING` 链。
|
|
||||||
|
|
||||||
正确测试方式应该是从外部访问设备 A 的远程入口地址,或者从同网段其他设备访问设备 A 的对应端口。
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### 10.2 为什么设备 B、C 的摄像头不能在设备 A 上直接转到 10.20.1.11?
|
|
||||||
|
|
||||||
因为设备 A、B、C 三台设备的本地摄像头网段都使用了相同 IP:
|
|
||||||
|
|
||||||
```text
|
|
||||||
10.20.1.11
|
|
||||||
10.20.1.12
|
|
||||||
```
|
|
||||||
|
|
||||||
对于设备 A 来说,访问 `10.20.1.11` 默认会走设备 A 自己的 `eth1`,访问到设备 A 本地摄像头。
|
|
||||||
设备 A 无法仅通过目标 IP 区分这是 A、B、C 哪一台设备下面的摄像头。
|
|
||||||
|
|
||||||
所以必须通过中转端口区分:
|
|
||||||
|
|
||||||
```text
|
|
||||||
B 摄像头:设备 A -> 10.16.140.112:28011/28012 -> B 本地摄像头
|
|
||||||
C 摄像头:设备 A -> 10.16.140.113:28011/28012 -> C 本地摄像头
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### 10.3 18003 当前为什么无法访问?
|
|
||||||
|
|
||||||
当前已经确认:
|
|
||||||
|
|
||||||
```text
|
|
||||||
设备 C 的 10.16.140.113:80 服务未开启。
|
|
||||||
```
|
|
||||||
|
|
||||||
因此远程访问:
|
|
||||||
|
|
||||||
```text
|
|
||||||
http://设备A访问地址:18003
|
|
||||||
```
|
|
||||||
|
|
||||||
无法打开属于正常现象。
|
|
||||||
需要先在设备 C 上启动对应的业务管理服务,并确认设备 A 可以访问:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
curl -I http://10.16.140.113
|
|
||||||
```
|
|
||||||
|
|
||||||
如果返回 HTTP 响应,再测试远程 `18003` 访问。
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 11. 临时规则与持久化说明
|
|
||||||
|
|
||||||
当前通过 `iptables` 手动添加的规则属于临时规则。
|
|
||||||
|
|
||||||
设备重启后,这些规则可能会丢失。
|
|
||||||
|
|
||||||
后续如果确认全部链路稳定,需要将以下内容持久化:
|
|
||||||
|
|
||||||
1. `/proc/sys/net/ipv4/ip_forward=1`
|
|
||||||
2. 设备 A 上的所有 DNAT、MASQUERADE、FORWARD 规则
|
|
||||||
3. 设备 B 上的本地摄像头中转规则
|
|
||||||
4. 设备 C 上的本地摄像头中转规则
|
|
||||||
|
|
||||||
可以考虑使用以下方式之一持久化:
|
|
||||||
|
|
||||||
```text
|
|
||||||
方式 1:写入 systemd 启动脚本
|
|
||||||
方式 2:使用 iptables-save / iptables-restore
|
|
||||||
方式 3:安装 iptables-persistent
|
|
||||||
```
|
|
||||||
|
|
||||||
推荐后续根据现场系统情况,整理成独立脚本,例如:
|
|
||||||
|
|
||||||
```text
|
|
||||||
设备 A:/usr/local/bin/setup-forward-a.sh
|
|
||||||
设备 B:/usr/local/bin/setup-forward-b.sh
|
|
||||||
设备 C:/usr/local/bin/setup-forward-c.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
并配置 systemd 开机自动执行。
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 12. 当前状态总结
|
|
||||||
|
|
||||||
当前已确认:
|
当前已确认:
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user