Форум русскоязычного сообщества Ubuntu


За новостями русскоязычного сообщества и Ubuntu в целом можно следить на нашей страничке в Google+

Автор Тема: iptables SNAT - как сделать динамическую смену?  (Прочитано 3439 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Всем добрый день.
Возник вопрос, есть правило трансляции адресов -A POSTROUTING -s 192.168.0.1 -o eth1 -j SNAT --to-source 194.187.190.182
Стоит задача сделать так, чтобы все исходящие запросы с сервера шли с ip адресов диапазона 194.187.190.182/24, причем рандомно.
« Последнее редактирование: 17 Март 2010, 12:38:38 от TrEK »

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
До ядра 2.6.26 можно было задавать в виде x.x.x.x-y.y.y.y

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Задал так, но снатиться через одну айпишку.

возможно надо цепляться за "-m random --average" ?

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
А версия ядра какая? По моему, -m random уже выпилили из новых версий ядер.

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
root@ubuntu:/etc# uname -a
Linux ubuntu 2.6.27 #1 SMP Wed Oct 22 13:28:40 EEST 2008 i686 GNU/Linux


root@ubuntu:/etc# iptables -V
iptables v1.4.2-rc1

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Выпилили. Как random так и диапазоны.

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
тоесть в новых версиях ядра нету ни рендома ни диапазонов?...
ну а какое тогда решение задачи?

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Почитал щас ман iptables. Попробуй так:

-A POSTROUTING -s 192.168.0.1 -o eth1 -j SAME --to 194.187.190.1-194.187.190.254 --nodst

авось получится

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
root@ubuntu:/etc# cat /etc/iptables-save | iptables-restore
iptables-restore: line 50 failed



Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Пля. И его выпилили. А в манах этого не отразили.

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: iptables SNAT - как сделать динамическую смену?
« Ответ #10 : 17 Март 2010, 15:02:16 »
Что ж они только выпиливают все...  :(
Лучше б дело доброе сделали, в виде дополнительных плюшек. :idiot2:

Пользователь решил продолжить мысль 17 Март 2010, 16:48:59:
Какие варианты?
« Последнее редактирование: 17 Март 2010, 16:48:59 от TrEK »

Оффлайн roma333

  • Участник
  • *
  • Сообщений: 206
    • Просмотр профиля
Re: iptables SNAT - как сделать динамическую смену?
« Ответ #11 : 18 Март 2010, 02:10:57 »
iptables -A POSTROUTING -s 192.168.0.1 -m iprange --dst-range 194.187.190.1-194.187.190.254

а так не работает?

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: iptables SNAT - как сделать динамическую смену?
« Ответ #12 : 18 Март 2010, 11:09:24 »
-m iprange --dst-range 194.187.190.1-194.187.190.254
Это выборка по условию, а нам нужно натить по источнику.

Оффлайн roma333

  • Участник
  • *
  • Сообщений: 206
    • Просмотр профиля
Re: iptables SNAT - как сделать динамическую смену?
« Ответ #13 : 18 Март 2010, 11:35:47 »
Тогда можно в лоб - сделать массив адресов адресов и генерить правила циклом если адреосв немного.
Но разумнее воспользоваться ipset - http://ipset.netfilter.org/

Вот статья по использованию - http://wiseelf.blogspot.com/2006/08/ipset-iptables.html
« Последнее редактирование: 18 Март 2010, 11:40:20 от roma333 »

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: iptables SNAT - как сделать динамическую смену?
« Ответ #14 : 18 Март 2010, 12:01:29 »
Но разумнее воспользоваться ipset - http://ipset.netfilter.org/

Опять не то
Цитировать
Depending on the type, currently an IP set may store IP addresses, (TCP/UDP) port numbers or IP addresses with MAC addresses in a way, which ensures lightning speed when matching an entry against a set.

 

Страница сгенерирована за 0.065 секунд. Запросов: 22.