Поддержание исходного IP-адреса клиента в процессе перенаправления трафика обычно невозможно при стандартной настройке NAT, поскольку NAT изменяет адрес источника на адрес проксирующего устройства. Тем не менее, есть технологии и методы, которые позволяют сохранять оригинальные адреса отправителей:
1. **Прозрачный прокси** (Transparent Proxy) - использует методы для перехвата трафика, не изменяя при этом IP-адрес источника.
2. **Direct Server Return (DSR)** - используется в балансировщиках нагрузки для поддержания исходного IP-адреса.
3. **Использование туннелей** - создает VPN-подобное соединение, в рамках которого оригинальные IP сохраняются.
Так как вы упоминаете ZeroTier, мы можем предположить, что ваш сетевой поток уже находится в таком VPN-туннеле и исходные IP-адреса клиентов сохраняются внутри этой сети. Таким образом, если вы используете ZeroTier для соединения шлюза и игрового сервера (или других сервисов), вам возможно не нужно волноваться о сохранении исходных IP-адресов, так как они будут уходить по туннелю непосредственно от клиента к серверу.
Для того, чтобы осуществить перенаправление портов на уровне шлюза, используя nftables без указания каждого порта отдельно, вы можете рассмотреть примерно следующую конфигурацию:
```bash
table ip nat {
chain prerouting {
type nat hook prerouting priority 0; policy accept;
iifname "zerotier-interface" tcp dport 25500-25600 dnat to "ip-адрес-игрового-сервера"
}
chain postrouting {
type nat hook postrouting priority 100; policy accept;
oifname "eth0" masquerade
}
}
```
В этой конфигурации измените `zerotier-interface` на официальное название интерфейса ZeroTier в вашей системе и `"ip-адрес-игрового-сервера"` на фактический IP-адрес вашего игрового сервера внутри сети ZeroTier. Диапазон портов `25500-25600` является примером и его нужно адаптировать под ваши нужды.
Обратите внимание, что сохранение оригинального IP-адреса будет работать только в пределах ZeroTier сети. Если вы хотите чтобы исходные IP-адреса сохранялись после выхода из туннеля, вам потребуется использовать специализированные методы, которые могут быть реализованы на более высоком уровне, например при помощи программных продуктов специальной направленности.
Имейте в виду, что изменение конфигурации сети может привести к непредвиденным последствиям, если вы не полностью уверены в том, что делаете. Также стоит уделить внимание вопросам безопасности, так как открытие большого числа портов может представлять безопасностный риск.