Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #30 : 22 Августа 2010, 20:30:19 » |
|
можете поділитися?
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #31 : 30 Августа 2010, 07:59:08 » |
|
Після того як ua-ix пустив через окремого провайдера не шейпиться upload (тільки upload ua-ix), напевно неправильні правила в ipfw прописав, хто з таким стикався ? #!/bin/sh - f='/sbin/ipfw'
#internet ifOut='fxp0' #ua-ix ifOut2='xl0'
${f} table 120 flush ${f} table 120 add 224.0.0.0/4 ${f} table 120 add 172.16.0.0/12
${f} -q -f flush
${f} add 28 allow udp from any to any 53 ${f} add 29 allow udp from any to 8.8.8.8 ${f} add 30 allow udp from 8.8.8.8 to any
${f} add 50 allow tcp from any to me 22 ${f} add 51 allow tcp from me 22 to any
${f} add 100 deny tcp from any to any 445
${f} add 110 allow ip from any to any via lo0 ${f} add 120 skipto 1000 ip from me to any ${f} add 130 deny icmp from any to any in icmptype 5,9,13,14,15,16,17 ${f} add 140 deny ip from any to "table(120)" ${f} add 150 deny ip from "table(120)" to any ${f} add 160 skipto 2000 ip from any to me
${f} add 200 skipto 500 ip from any to any via ${ifOut} ${f} add 201 skipto 500 ip from any to any via ${ifOut2}
${f} add 300 skipto 4500 ip from any to any in
${f} add 400 skipto 450 ip from any to any recv ${ifOut} ${f} add 401 skipto 450 ip from any to any recv ${ifOut2}
${f} add 420 divert 1 ip from any to any ${f} add 450 divert 2 ip from any to any ${f} add 490 allow ip from any to any
${f} add 500 skipto 32500 ip from any to any in ${f} add 510 divert 1 ip from any to any ${f} add 540 allow ip from any to any
${f} add 1000 allow udp from any 53,7723 to any ${f} add 1010 allow tcp from any to any setup keep-state ${f} add 1020 allow udp from any to any keep-state ${f} add 1100 allow ip from any to any
${f} add 2000 check-state ${f} add 2010 allow icmp from any to any ${f} add 2020 allow tcp from any to any 80,443 ${f} add 2050 deny ip from any to any via${ifOut} ${f} add 2051 deny ip from any to any via${ifOut2} ${f} add 2060 allow udp from any to any 53,7723
${f} add 2100 deny ip from any to any
${f} add 32490 deny ip from any to any
|
|
|
Записан
|
|
|
|
smallcms
NoDeny
Старожил
Карма: 64
Offline
Сообщений: 279
|
|
« Ответ #32 : 30 Августа 2010, 11:37:05 » |
|
У Вас xl0 - внешка? Можно как вариант первым направлением сделать внешку, а уаикс закинуть в направление 2. По-умолчанию все направления, кроме основного работают в одну трубу (общая скорость на вх/исх). Здесь я колупал данную проблему. И кстати успешно применяю.
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #33 : 30 Августа 2010, 21:26:14 » |
|
попробував так зробити, але все рівно upload ua-ix не шейпиться, для нього не спрацьовує правило 05400 pipe tablearg ip from table(11) to any
|
|
|
Записан
|
|
|
|
Elisium
NoDeny
Старожил
Карма: 19
Offline
Сообщений: 360
На форумах "спасибом" называется плюс к карме.
|
|
« Ответ #34 : 30 Августа 2010, 23:02:18 » |
|
Ну, во первых, уже давно и не раз писали, почему НЕЛЬЗЯ делать ${f} add 28 allow udp from any to any 53 По теме: ДО бгп была такая же история: два прова есть, а бгп - нет. Так вот, фаер у меня был на 99% такойже (глянул ща в бакапы), но правил 400/401 там НЕТ и близко и вместо 420/450 у меня ngtee (по вкусу). п.с. Само собой, не забыть добавить в 126ю таблицу НУЖНЫЕ подсети 2го направления и выставить нужную скорость в соответствующих тарифах.
|
|
« Последнее редактирование: 30 Августа 2010, 23:04:43 от Elisium »
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #35 : 31 Августа 2010, 13:08:54 » |
|
після видалення правил 400/401, нічого не помінялося, в таблиці 126 ір є, коли в тарифі ставлю швидкісь не основного напрямку то також вхідна шейпиться а вихідна ні.
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #36 : 31 Августа 2010, 13:15:02 » |
|
ipfw sh
00028 479 32892 allow udp from any to any dst-port 53 00029 0 0 allow udp from any to 8.8.8.8 00030 276 32064 allow udp from 8.8.8.8 to any 00050 584 30796 allow tcp from any to me dst-port 22 00051 2054 360532 allow tcp from me 22 to any 00100 0 0 deny tcp from any to any dst-port 445 00110 186 505336 allow ip from any to any via lo0 00120 197 22165 skipto 1000 ip from me to any 00130 0 0 deny icmp from any to any in icmptypes 5,9,13,14,15,16,17 00140 42 10017 deny ip from any to table(120) 00150 0 0 deny ip from table(120) to any 00160 120 49498 skipto 2000 ip from any to me 00200 45083 34813359 skipto 500 ip from any to any via fxp0 00201 19050 18750744 skipto 500 ip from any to any via xl0 00300 17935 2606550 skipto 4500 ip from any to any in 00420 46111 50619920 divert 1 ip from any to any 00450 46111 50619920 divert 2 ip from any to any 00490 46111 50619920 allow ip from any to any 00500 46533 50977428 skipto 32500 ip from any to any in 00510 17600 2586675 divert 1 ip from any to any 00540 17600 2586675 allow ip from any to any 01000 192 21937 allow udp from any 53,7723 to any 01010 0 0 allow tcp from any to any setup keep-state 01020 0 0 allow udp from any to any keep-state 01100 4 228 allow ip from any to any 02000 0 0 check-state 02010 5 461 allow icmp from any to any 02020 0 0 allow tcp from any to any dst-port 80,443 02050 82 47135 deny ip from any to any via fxp0 02051 30 1792 deny ip from any to any via xl0 02060 0 0 allow udp from any to any dst-port 53,7723 02100 3 110 deny ip from any to any 05000 15 1236 deny ip from not table(0) to any 05001 0 0 skipto 5010 ip from table(127) to table(126) 05002 17920 2605314 skipto 5030 ip from any to not table(2) 05003 0 0 deny ip from any to not table(1) 05004 0 0 pipe tablearg ip from table(21) to any 05005 0 0 deny ip from any to any 05010 0 0 pipe tablearg ip from table(127) to any 05030 201 9648 deny tcp from table(15) to any dst-port 25 05226 0 0 allow ip from table(127) to table(126) 05400 17719 2595666 pipe tablearg ip from table(11) to any 32000 0 0 deny ip from any to any 32490 0 0 deny ip from any to any 33000 3 180 pipe tablearg ip from table(126) to table(127) 33001 46530 50977248 skipto 33010 ip from not table(2) to any 33002 0 0 pipe tablearg ip from any to table(20) 33003 0 0 deny ip from any to any 33226 0 0 allow ip from table(126) to table(127) 33400 46394 50961527 pipe tablearg ip from any to table(10) 65535 135 14473 deny ip from any to any
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #37 : 31 Августа 2010, 16:04:49 » |
|
Ну, во первых, уже давно и не раз писали, почему НЕЛЬЗЯ делать ${f} add 28 allow udp from any to any 53 По теме: ДО бгп была такая же история: два прова есть, а бгп - нет. Так вот, фаер у меня был на 99% такойже (глянул ща в бакапы), но правил 400/401 там НЕТ и близко и вместо 420/450 у меня ngtee (по вкусу). п.с. Само собой, не забыть добавить в 126ю таблицу НУЖНЫЕ подсети 2го направления и выставить нужную скорость в соответствующих тарифах. я так розумію, що у вас на ua-ix прописані маршрути в системі, а в мене трафік туди йде через правило в pf - pass in on $int_if route-to { ($ext_if2 $ext_gw2) } inet proto { tcp, udp } from $lan_net to <ua-ix> keep state, тому і не обмежується вихідна швидкість
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #38 : 31 Августа 2010, 18:40:32 » |
|
а як зробити щоб з файлику з списком ір ua-ix автоматично прописувалтсь роути на інший шлюз ? думаю що це б мало вирішити мою проблему.
|
|
|
Записан
|
|
|
|
Elisium
NoDeny
Старожил
Карма: 19
Offline
Сообщений: 360
На форумах "спасибом" называется плюс к карме.
|
|
« Ответ #39 : 31 Августа 2010, 22:25:48 » |
|
Ну, если я правильно понял вопрос то: У меня было так: два прова - один мир, второй только украина. Соответственно на первого прова смотрел дефолт, на второго - все укр префиксы. Делал так: 1. Забирал укр префиксы текстовым файликом раз в сутки. Там один префикс на строку. 2. После того, как забрал, делал что то вроде: route flush sleep 3 route add default ШЛЮЗ_В_МИР route add -net ЛОКАЛЬНАЯ_СЕТЬ ЕЕ_ШЛЮЗ sleep 3 cat ./uaix.txt | xargs -I tst route add -net tst ШЛЮЗ_В_УКРАИНУ route delete -net ПОДСЕТЬ_ПРОВА_С_МИРОМ Запускалось по крону раз в сутки дето около 6ти утра.
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #40 : 31 Августа 2010, 23:58:55 » |
|
дякую, так працює. але все рівно цікаво чому у варіанті з pf-ом є така проблема, бо використовувати pf для цієї задачі для мене краще.
|
|
|
Записан
|
|
|
|
Elisium
NoDeny
Старожил
Карма: 19
Offline
Сообщений: 360
На форумах "спасибом" называется плюс к карме.
|
|
« Ответ #41 : 02 Сентября 2010, 00:01:14 » |
|
ЕСЛИ я правильно помню, то есть нюанс в ПОРЯДКЕ загрузки фаерволов. Кто раньше в цепочке загрузился, тот и раньше отрабатывает свои правила. Как то так. Помню довольно смутно, поэтому это просто намек в эту сторону ...
п.с. Сам на тему "ДВА шлюза в инет" немало перерыл и переспрашивал форумов. Все советы в основном сводились к "ПФ - только нат и ничего более", а все остальное делать через ипфв/роуты. И, в принципе, такая схема работала без проблем.
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #42 : 02 Сентября 2010, 09:44:41 » |
|
а як тоді через через іпфв/роути зробити щоб трафік через 80-й порт йшов через окремий канал ?
|
|
|
Записан
|
|
|
|
Андрій
NoDeny
Старожил
Карма: 3
Offline
Сообщений: 294
|
|
« Ответ #43 : 02 Сентября 2010, 09:46:45 » |
|
вихідні пакети коли проходили через pf дійсно в ipfw вже не йшли
|
|
|
Записан
|
|
|
|
Elisium
NoDeny
Старожил
Карма: 19
Offline
Сообщений: 360
На форумах "спасибом" называется плюс к карме.
|
|
« Ответ #44 : 02 Сентября 2010, 10:34:11 » |
|
а як тоді через через іпфв/роути зробити щоб трафік через 80-й порт йшов через окремий канал ?
fwd КУДА_ТО_на_этот_сервер tcp from table(0) to not me dst-port 80 Мм .. как то так ?
|
|
|
Записан
|
|
|
|
|