Я хотел бы изменить IP-адрес источника в соответствии с IP-адресом и интерфейсом, в котором он был. Давайте рассмотрим следующий пример:
-----------------------------
| |
| host 1 |
| |
| application |
| |
| eth0 |
-----------------------------
|
| IP0-IP47
|
-----------------------------
| eth0 |
| host 2 |
| |
| NAT |
| |
| eth1.1 eth1.2 eth1.3 |
-----------------------------
| | |
| | |
IP0-IP15 IP0-IP15 IP0-IP15
Хост 2 получает сообщения по интерфейсам eth1.1, eth1.2, eth1.3. На каждом интерфейсе имеется 16 хостов с 16 уникальными IP-адресами, но эти 16 IP-адресов одинаковы для всех интерфейсов. Мне нужно сделать NAT, чтобы исходный ip изменялся в зависимости от src ip и интерфейса, в который он вошел, чтобы иметь 48 уникальных исходных ip-адресов для сообщений, поступающих в приложение.
Приложение, работающее на самых отключенных хостах, и их ip не могут быть изменены. Вот почему я решил поместить их в VLAN.
Я искал различные учебные пособия и HOWTO, но не смог найти то, что искал. Проблема в том, что SNAT можно использовать только в цепочке POSTROUTING, но в POSTROUTING у меня нет информации об интерфейсе, в котором он появился.
Я прав с моим предположением? Я новичок в этой сети, поэтому любая помощь и совет будут полезны.
Спасибо за вашу помощь.