我正在尝试设置一个系统来执行 NAT 和其他 iptables 操作(如日志记录、防火墙、监控等)。ISP 提供动态 IP 地址,DSL 调制解调器执行 NAT。
我有以下“小型企业”配置:
192.168.1.1 |-----------|
----------------------| |
| SWITCH 1 |
192.168.1.2 | |
----------------------| |
| |
192.168.1.3 | |
----------------------| |
|-----------|
|
| 192.168.1.4
|
|--------------|
| Dual NIC |
| IPTABLES m/c | NAT
|--------------|
|
|
|192.168.2.2
|
|--------------| 192.168.2.1 |----------------|
| SWITCH 2 | ------------|DSL Modem NAT |
|--------------| |----------------|
我的目标是控制 192.168.1.x LAN 上每个节点可以做什么、记录条目等。IPTABLES 机器可以做的事情比 Iptables CLI 能做的多得多...我们需要一些到 libnetfilter_queue 库的 C 接口,因为我们需要做一些自定义监控和日志记录。
我没有静态公共 IP 地址。因此,我需要依赖 DSL 内置的 NAT。实际上,我最终会有两个串联的 NAT。一个通过 IPTables 进行 SNAT,源更改为 192.168.2.2。第二个是 DSL 调制解调器将执行的操作,将源 IP 从 192.168.2.2 更改为当时分配的公共 Internet IP。
我认为一定有更好的方法。那是什么?还是我完全偏离了主题?