Помогите, пожалуйста, проблему решить. Не могу сообразить, как сделать.
Есть у меня от провайдера /27 подсеть, в которой мне доступны 2 адреса.
Сейчас у меня стоит домашний сервер, у которого 2 сетевые карты. На одной поднята провайдерская /27, на другой 192.168.0.1/24, кабель которой вставлен в роутер(dir-320), порты которого все в одном vlan, и работают бриджем + вайфай бриджем.
Проводом подключен один компьютер, остальные по wifi. Хочу, чтоб на этом компьютере можно было использовать второй адрес без nat.
Т.е. мне доступны xxx.xxx.102.76/27 и xxx.xxx.102.77/27.
Сейчас у того компьютера назначена статика 192.168.0.10/24, шлюз 192.168.0.1, на сервачке -s 192.168.0.10 -j SNAT --to xxx.xxx.102.76 и -d xxx.xxx.102.76 -j DNAT --to 192.168.0.10.
Хочу от этого избавиться, дав компьютеру xxx.xxx.102.76.
Допустим, прописал я маршрут до xxx.xxx.102.76 на интерфейс, где подключена локалка, а дальше что? Что прописывать шлюзом?
Было бы 3 адреса, я бы назначил .76 на интерфейс, где интернет, .77 где локалка и .78 на компьютер.
Если так не получится, то есть ли способ сделать Full-cone nat с этого / на этот адрес без заполнения conntrack таблицы(notrack)? Пробовал -j SAME, -j NETMAP, — использует conntrack, при добавлении в -t raw -j NOTRACK пакеты не идут.
Не думал я, что это будет сложно. Собрал xtables, попробовал использовать все комбинации RAWSNAT, RAWDNAT и NOTRACK — все равно трекуются. Попробовал использовать nat из iproute2 — там все давно сломано и не работает, за одно случайно очистил таблицу правил и сейчас нужно как-то будет перезагружать сервер. Буду пробовать способ через tc.
Дело в том, что бридж просто так сделать не выйдет, нужно либо виланы городить, либо железку менять, что не очень хочется. Я тут xtables собрал, увидел, что есть rawdnat и rawsnat, сейчас попробую.