А ничего если адреса не подряд а надерганы из одного класса C ("C", да? где
маска 24 бита)?
Дело в том что это не провайдер, а лаборатория в институсткой сети.
Стандартно у все компы в одной и той-же сетке, что не есть хороше, так что
сегметируем потихоньку. Проблема с некоторыми "продвинытыми" которые на дыбы
встали и хотят оставить за собой реальный IP (это же сокровище такое...),
вот и изворачиваюсь.
Если внутренная сеть сегментирована, и внешние адреса разбросаны по
сегментам в достаточно призвольном порядке, так, что их не удаётся
объединить в подсети, то возникают сложности. В linux можно явно указть
от какого адреса в заданном напрвлении слать пакеты (router_ip и ext_ip
могут быть в разных подсетях: ip route add default via router_ip src
ext_ip), но в windows такое врядли возможно. Так что если операционка на
хостах, к которым требуется доступ извне, недостаточно продвинута, то
проще реализовать вариант с NAT'ом
Второй вариант - прозрачный NAT внутрь/наружу:
iptables -A PREROUTING -t nat -d ext_ip -j DNAT --to-destination int_ip
iptables -A POSTROUTING -t nat -s int_ip -j SNAT --to-source ext_ip
Т.е. все реальные IP принадлежат рутеру, сидят на наружном интерфейсе, но
сам он пользуется только одним, а остальные передает внутырь, так?
Никуда адреса "сажать" не нужно, ни на роутере, ни на хосте в локальной
сети - достаточно прописать iptables-правила для каждой пары адресов как
я продемонстрировал выше. В результате при входе на внешний интерфейс
роутера адрес назначения ext_ip будет переписан в int_ip (отработает
DNAT) и, если это позволяют правила в FORWARD, пакет будет отправлен в
локалку в соответсвии с маршрутизацией к int_ip. Таким образом,
локальный хост будет доступен для Сети. Второе правило (с SNAT) даст
аналогичный эффект когда оригинатором соединения будет локальный хост -
адрес int_ip при выходе наружу перепишется в ext_ip - в результате Сеть
будет доступна для локального хоста.
Я так думаю, маверное можно скомбинировать. Чтоб каждый адрес существовал 2
раза, один на наружноном интерфейся (рутера) а другой на внутреннем (рутера
или киента), Между каждой парой мостик NAT'ом, и вручную прописать таблицы
маршрутизации. Дело?
Я не совсем понял что вы написали. Наверное, потому что вы не совсем
поняли что написал я.
--
Excuse the nuclear fallout, but my finger slipped.