Elisium Опубликовано 2 декабря, 2009 (изменено) · Жалоба Ммм ... попробовал два варианта на тестовых машинках - оба работают. Не понял, где я накосячил )) 10.2.0.0/24 - анонсируемые адреса в АС (пример :-) ) 10.2.0.128/25 - пул под НАТ 10.2.0.1 - бгп 10.2.0.2 - нат 1й вариант. на НАТе - рц.конф defaultrouter="10.2.0.1"ifconfig_rl0="inet 172.16.0.1 netmask 255.255.255.0" - юзеры ifconfig_em0="inet 10.2.0.2 netmask 255.255.255.0" - к бгп пф.конф nat pass on em0 from 172.16.0.0/24 to any -> 10.2.0.128/25 source-hash на БГП - (тестовая машинка с фрёй) рц.конф ifconfig_em0="inet 10.2.0.1 netmask 255.255.255.252"static_routes="net00" route_net00="-net 10.2.0.0/24 10.2.0.2" и второй вариант на НАТе - рц.конф defaultrouter="10.2.0.1"ifconfig_rl0="inet 172.16.0.1 netmask 255.255.255.0" - юзеры ifconfig_em0="inet 10.2.0.2 netmask 255.255.255.0" - к бгп ifconfig_em0_alias0="inet 10.2.0.128 netmask 255.255.255.255" ... и еще 125 алиасов ... ifconfig_em0_alias126="inet 10.2.0.254 netmask 255.255.255.255" пф.конф nat pass on em0 from 172.16.0.0/24 to any -> 10.2.0.128/25 source-hash на БГП - (тестовая машинка с фрёй) рц.конф ifconfig_em0="inet 10.2.0.1 netmask 255.255.255.0" Изменено 3 декабря, 2009 пользователем Elisium Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 3 декабря, 2009 · Жалоба Альясы прописываются /32! man ifconfig: alias Establish an additional network address for this interface. This is sometimes useful when changing network numbers, and one wishes to accept packets addressed to the old interface. If the address is on the same subnet as the first network address for this interface, a non-conflicting netmask must be given. Usually 0xffffffff is most appropriate. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
adeep Опубликовано 3 декабря, 2009 · Жалоба Альясы прописываются /32! man ifconfig:alias Establish an additional network address for this interface. This is sometimes useful when changing network numbers, and one wishes to accept packets addressed to the old interface. If the address is on the same subnet as the first network address for this interface, a non-conflicting netmask must be given. Usually 0xffffffff is most appropriate. не обновили ман. с 7ки можно любую маску ставить. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Elisium Опубликовано 3 декабря, 2009 (изменено) · Жалоба Альясы прописываются /32! man ifconfig: о! Спасибо .. В конфиге написал /32, а сюда чегото запостил неправильную маску ((( п.с. тут исправил. п.п.с. хотя в мане написано - "/32 наиболее подходящая", другие маски тоже нормально ставятся .. Изменено 4 декабря, 2009 пользователем Elisium Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mousus Опубликовано 3 декабря, 2009 · Жалоба Elisium кстати пул белых адресов наверное на бордере лучше статик роутом прописать на серый ипешник браса, а анонсировать белые адреса, выдаваемые клиентам кваггой по ospf. Тоесть чтобы оснавная масса народу работала под серыми адресами а единицы которым нужны белые могли ходить с тех же брасов. другой вопрос: кто какой ip адрес обычно брасу назначает?? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 4 декабря, 2009 · Жалоба Не обновили ман. с 7ки можно любую маску ставить. Ман не обновили разработчики тогда :) man ifconfig от 8.0 говорит то же самое. Потом, альясы ведь могут быть из другой сети, поэтому описание сохраняет силу. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Seriy_volk Опубликовано 4 марта, 2010 · Жалоба Очень хочеться сделать пул с помошью ipfw nat! Нашел вот такое руководство. Непонятно как это работат. У кого нибудь получилось сделать пул на ipfw nat? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
XeonVs Опубликовано 4 марта, 2010 (изменено) · Жалоба Да никаких проблем, простейший вариант: #!/bin/sh nat_interface="vlan0" ips="1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4" fwcmd="/sbin/ipfw -q" ${fwcmd} -f flush #таблица и сетями t=1 $fwcmd table $t flush $fwcmd table $t add 10.0.0.1/24 1 $fwcmd table $t add 10.0.0.2/24 2 $fwcmd table $t add 10.0.0.3/24 3 $fwcmd table $t add 10.0.0.4/24 4 #таблица с внешними адресами n=10 $fwcmd table $n flush number=1 for ip in $ips; do ${fwcmd} table $n add ${ip} ${number} ${fwcmd} nat ${number} config ip ${ip} number=$(($number+1)) done ${fwcmd} add 100 nat tablearg ip from "table($t)" to any via ${nat_interface} ${fwcmd} add 200 nat tablearg ip from any to "table($n)" via ${nat_interface} Изменено 4 марта, 2010 пользователем XeonVs Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 5 марта, 2010 · Жалоба А аналог динамического распределения не делали? Что-нибудь типа skipto xxx prob 0.4, а дальше уже разные nat с keep-state? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
XeonVs Опубликовано 5 марта, 2010 · Жалоба А аналог динамического распределения не делали? Что-нибудь типа skipto xxx prob 0.4, а дальше уже разные nat с keep-state?нет, небыло необходимости и была основная задача исспользовать ресурсы ЦПУ максимальным образом... т.е. в итоге в ipfw всего 3 правила.ng_nat показал хуже производительность в такой позе. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
YuryD Опубликовано 5 марта, 2010 · Жалоба pf-ный nat нормально работает на малых скоростях, когда я попробовал натить pf source hash при скоростях ок 70-80 мбит юзеры взвыли от тормозов, причем натит всех отдельная машинка, cpu упал но юзеры заорали... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
_longhorn_ Опубликовано 5 марта, 2010 · Жалоба при скоростях ок 70-80 мбит Это скорость тарифного плана или общая нагрузка на канал от абонентов? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mousus Опубликовано 5 марта, 2010 · Жалоба буквально вчера вечером смотрел статистику на брасе с которого работало 500+ пользователей, при том с белыми ипешниками из них полтора землекопа, тоесть все через нат на сетку в 32 адреса --- общая загрузка порта коммутатора 105-120 мегабит, 55000+ пакетов и load averages: 0.23, 0.32, 0.24 всего, тоесть почти полтыщи человек pf натил не напрягаясь, опять же скорости режутся только во внешний канал интернета, между пирами скорости не режутся и внутри нашей сети пользователи ходят без ограничений Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Mechanic Опубликовано 5 марта, 2010 · Жалоба а кто-нить сравнивал производительность ng_nat и ipfw_nat ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
XeonVs Опубликовано 5 марта, 2010 · Жалоба а кто-нить сравнивал производительность ng_nat и ipfw_nat ? я сравнивал, на своей задаче получилось хуже, нетграф тоже процессора кушать хочет. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
bsdelnik Опубликовано 5 марта, 2010 · Жалоба я сравнивал, на своей задаче получилось хуже, нетграф тоже процессора кушать хочет."В кавказской школе. Учитель: Грузины лучше, чем армяне. Голос: Чем? Учитель: ЧЕМ АРМЯНЕ ГОВОРЮ!!!"XeonVs, так и не ясно из поста, что в результате лучше. ng_nat он хотя бы параллелится... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
XeonVs Опубликовано 5 марта, 2010 · Жалоба я сравнивал, на своей задаче получилось хуже, нетграф тоже процессора кушать хочет."В кавказской школе. Учитель: Грузины лучше, чем армяне. Голос: Чем? Учитель: ЧЕМ АРМЯНЕ ГОВОРЮ!!!"XeonVs, так и не ясно из поста, что в результате лучше. ng_nat он хотя бы параллелится... Чем хуже, меньшая производительность pps\bps.и ipfw nat тоже не в синглтреде работает. ng_queueX начинает активно потреблять ресурсы ЦП, памяти для гоняния структур внутри ядра... в случае ipfw nat сей оверхед меньше. Если я не прав, пусть поправят. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
bsdelnik Опубликовано 5 марта, 2010 · Жалоба ipfw nat будет работать в контексте прерывания, соответственно, одно ядро на сетевушку (если драйвера не яндексовские)... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
XeonVs Опубликовано 5 марта, 2010 · Жалоба ipfw nat будет работать в контексте прерывания, соответственно, одно ядро на сетевушку (если драйвера не яндексовские)... согласен. почему я и сделал оговорку про свои задачи, там было 8 ядер и 8 интерфейсов в lagg. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Mechanic Опубликовано 6 марта, 2010 · Жалоба Очень хочеться сделать пул с помошью ipfw nat! Нашел вот такое руководство. Непонятно как это работат. У кого нибудь получилось сделать пул на ipfw nat?там в статье есть интересный момент:- Библиотека libalias, на которой основан ipfw nat, плохо дружит с функциями аппаратного ускорения расчета контрольных сумм и управления потоками, которые доступны на некотроых сетевых адаптерах. Рекомендуется выключать tcp segmentation offloading (TSO), а так же rxcsum на том сетевом адаптере где работает нат (ifconfig em0 -rxcsum -tso).судя по этому при ng_nat тоже необходимо на всех интерфейсах лучше отключать rxcsum ?! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
wariored Опубликовано 10 марта, 2010 · Жалоба Цитата- Библиотека libalias, на которой основан ipfw nat, плохо дружит с функциями аппаратного ускорения расчета контрольных сумм и управления потоками, которые доступны на некотроых сетевых адаптерах. Рекомендуется выключать tcp segmentation offloading (TSO), а так же rxcsum на том сетевом адаптере где работает нат (ifconfig em0 -rxcsum -tso). судя по этому при ng_nat тоже необходимо на всех интерфейсах лучше отключать rxcsum ?! А кто-нибудь можнт сказать, на основании чего даны такие рекомендации? И в чем "недружба" может проявляться? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
XeonVs Опубликовано 10 марта, 2010 · Жалоба Цитата- Библиотека libalias, на которой основан ipfw nat, плохо дружит с функциями аппаратного ускорения расчета контрольных сумм и управления потоками, которые доступны на некотроых сетевых адаптерах. Рекомендуется выключать tcp segmentation offloading (TSO), а так же rxcsum на том сетевом адаптере где работает нат (ifconfig em0 -rxcsum -tso). судя по этому при ng_nat тоже необходимо на всех интерфейсах лучше отключать rxcsum ?! А кто-нибудь можнт сказать, на основании чего даны такие рекомендации? И в чем "недружба" может проявляться? не расчитана :) в списках рассылки было описание если память не изменяет.Проявляется в порче контрольных сумм на не транзитном траффике. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
wariored Опубликовано 11 марта, 2010 · Жалоба Спасибо огромное. На сервере была проблема: При обращении к веб-морде из внешней сети, через интерфейс на котором висит nat были жутчайшие тормоза, страничка просто не загружалась до конца. После отключения tso в свойстваах сетевой карты, все нормализовалось. Нет архива рассылки чтобы посмотреть описание, а в man такого нет. Хотя если баг известный могли бы добавить. Странно. А кто-нибудь слал багрепорт? Можетт разработчик libalias сам не знает)) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 12 марта, 2010 (изменено) · Жалоба Вообще-то в мане это более чем отчётливо есть: Due to the architecture of libalias(3), ipfw nat is not compatible with the TCP segmentation offloading (TSO). Thus, to reliably nat your network traffic, please disable TSO on your NICs using ifconfig(8). Изменено 12 марта, 2010 пользователем Dyr Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
wariored Опубликовано 13 марта, 2010 · Жалоба Видно у меня на машине ман старый. Там этого нет. Спасибо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...