LINUX.ORG.RU

Двойная перемаркировка пакетов для работы с двумя провайдерами на прозрачном мосте

 , , , policy-routing


7

2

В третьей статье из цикла «прозрачный брандмауэр с маршрутизатором» рассмотрена задача плавного перехода на новые адреса другого провайдера и особенности фильтрации пакетов через встроенный мост Linux на ядрах 4.X

>>> Статья полностью

★★★★★

Проверено: jollheef ()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от system-root

это %вендор_нейм%, уже решаем с поддержкой.

Кого когда уволить решает начальство, а не вендор с поддержкой.

vodz ★★★★★
() автор топика
Ответ на: комментарий от vodz

Я сравниваю готовое решение с самодельным, а не проприетарное с открытым.

Тот-же OpewnWRT умеет много всего, включая multi-WAN [1] и работает на широчай гамме оборудования. У меня например в libvirt всегда запущена виртуалка с OpenWRT, к которой уже подключены все остальные.

[1] https://openwrt.org/docs/guide-user/network/wan/multiwan/mwan3

jekader ★★★★★
()
Ответ на: комментарий от jekader

Я поглядел-поглядел на OpenWRT, облевался и сделал дома на рутер свой дистрибутив, на основе своего busybox. То есть все бинарники ровно в одном, от «ls» до «pppd» и даже «ebtables» с «mc». Получилось родное и няшное. И уж в настройке настоящая слакварь, а не xml+json+такая-то матерь с заклинаниями покруче кошковких. Наверное я тоже в вашем понимании «кирпичём чистил». Но вот почему-то кажется, что у меня есть скиллы, чтобы это всё сделать лучше всех. По крайней мере под свои задачи.

vodz ★★★★★
() автор топика
Последнее исправление: vodz (всего исправлений: 1)
Ответ на: комментарий от vodz

Безусловно, для личных нужд такие решения - самое то! А вот в корпоративной-же среде нынче удержать в штате IT специалиста такого уровня, как правило, обходится дороже, чем внедрить что-то готовое.

jekader ★★★★★
()

Я вас спрашиваю что за поток сознания?

Какая-то банда наводняет и правит ресурсами, люди прогуливают литературу и философию, модно выжигать огнём.

Свидетели Йеговы из 90х пожаловали? Или вы фанат Ванги?

trynoval (08.08.2018 23:01:31)

Это об аудитории. Что, не замечал как большинство любят одно и то же здесь? ГМО, космос, геев, всё искусственное.

Всё связано: прогуливают философию и литературу + от зряплат растет чсв -> нравятся простые решения с справедливым (с фасада) миром, справедливотсь которого поддерживается субстанцией Цивилизованности, которая имеет природную склонность скапливаться в оврагах с деньгами и собственностью.

Идёт борьба двух взглядов: верящего в добрые намерения фасада деклараций (表 omote) и второго, верящего в злые козни изнанки заговоров (裏 ura).

anonymous
()
Ответ на: комментарий от anonymous

Для любителей великогусского постмодернистского шовинизму велкам в 1С. Там вы найдёте много увлекательного и интересного.

Кастрюли свидомые зазвенели, забурлили и полезло из них говно )))

anonymous
()
Ответ на: комментарий от LamerOk

Иксперды из 5-ого «Б» пришли к нам проводит уроки ингриша.

Ну привед, эксперд :-)

Это синонимы, пример словоупотребления:

Вот именно, что словоупотребления. Я бы даже сказал «словоблудия».

https://en.wikipedia.org/wiki/Firewall_(computing)#History

The term firewall originally referred to a wall intended to confine a fire within a building.

anonymous
()
Ответ на: комментарий от anonymous

Я бы даже сказал

А кто тебя спрашивает? Уноси с собой свой охуительный манямирок, основанный кривом понимании английского.

LamerOk ★★★★★
()
Ответ на: комментарий от jekader

Интересно стало, что по вашему мнению есть «что-то готовое» в современном ИТ мире? Выше тут уже и микротики и киски приводили как «супер пупер» решение. Но скажите, разве их не надо уметь «готовить»? Ведь для «приготовления» нужно понимание что и зачем ты делаешь. Посмотрите форумы в «этих ваших интернетах» туча тем в виде «я скопипастил конфиг и у меня он не работает» какая разница софт роутер или киска? Копипастеры-мысковозы одинаковы, какую им железку не дай. И так же меня всегда умиляли узкие специализды, «я знаю только железо/софтN и знаю только как в нем кнопочку нажать, а все остальное плохое и поэтому не собираюсь даже разбираться как там нажать кнопочку».
Вам не кажется, что ваше же высказывание напоминает хэйтерство дистров? а-ля: Вот в моей уютной десяточке все робит из каробки, а в этих ваших линуксах не работает. Или, вот у меня в моем линуксе все работает а вашей гейоси не работает. И т.п.

anc ★★★★★
()
Ответ на: комментарий от anc

Знания, безусловно, важны при любом раскладе. Статью прочтут десятки человек (причём для её понимания тоже нужен базовый запас знаний в работе netfilter, а умеющий читать маны может и без статьи обойтись). А вот если-бы ТС отправил пару патчей в OpenWRT с улучшением поддержки Multi-WAN, то ими-бы воспользовалось на порядок больше народу, пусть и не зная подробностей реализации. И то я не удивлюсь, что весь нужный функционал там уже есть.

Что лушче? Каждому своё. Я предпочитаю второй вариант, так как очень часто есть готовые решения и можно потратить время на что-то более интересное, чем велосипедостроение.

К вопросу про дефиницию «чего-то готового» - для меня это платформа, заточенная под конкретную задачу. Например, для маршрутизатора важна скорость, надёжность, простота обновления и резервного копирования.

В голову пришло несколько примеров проблем с дистрибутивом общего назначения на стандартном железе в роли маршрутизатора (из личного опыта):

  • есть риск запороть файловую систему при power outage или повредить initrd при обновлении средствами пакетного менеджера
  • конфиги и файлы статуса разношёрстны, разбросаны по файловой системе и могут быть несовместимы с более новыми версиями отдельных компонентов
  • зависимости от служб и сервисов, не требующихся при работе а просто потребляющих ресурсы, а также общий размер дистрибутива и процесс его установки
  • современные x86 сервера с RAID контроллерами медленно загружаются - от нажатия кнопки питания до меню BIOS может проходить по нескольку минут

Надеюсь, моя позиция понятна. Когла писал последний пункт вспомнил: однажды мне пожаловались, что через один из рутеров не получается скачать большой файл. Оказалось, помирал блок питания и устройство за месяц перезагрузилось 300 (!) раз. Поднимался он быстро, поэтому заметно это было лишь при длительном скачивании чего-либо. Есть подозрение, что в случае с полноценным systemd дистрибутивом и журналируемой файловой системой мне позвонили-бы гораздо раньше ;)

jekader ★★★★★
()
Ответ на: комментарий от jekader

Начало было действительно хорошее, но закончили не удачно.

с дистрибутивом общего назначения на стандартном железе в роли маршрутизатора
в роли маршрутизатора

Только маршрутизатора. Я ничего не пропустил?

есть риск запороть файловую систему при power outage

не используйте ext2

initrd при обновлении средствами пакетного менеджера

А зачем вы вообще это делаете на маршрутизаторе? Обновление ради обновления?

конфиги и файлы статуса разношёрстны, разбросаны по файловой системе и могут быть несовместимы с более новыми версиями отдельных компонентов

Конфиги чего простите? На марштутиризаторе ошизеть сколько конфигов что бы запутаться.

зависимости от служб и сервисов, не требующихся при работе а просто потребляющих ресурсы

Вы точно что-то делаете не так. У мню на софт роутере работает только то что ему нужно для выполнения задачи + ssh, ЧЯДНТ ? Какие такие ненужные сервисы?

однажды мне пожаловались, что через один из рутеров не получается скачать большой файл. Оказалось, помирал блок питания и устройство за месяц перезагрузилось 300 (!) раз. Поднимался он быстро, поэтому заметно это было лишь при длительном скачивании чего-либо. Есть подозрение, что в случае с полноценным systemd дистрибутивом и журналируемой файловой системой мне позвонили-бы гораздо раньше ;)

fatality
Даже нет слов. Человек у которого дохнет железо, он его не мониторит (точнее мониторинг исполнен в виде звонков от юзверей), ставит в заслугу железке только то что она быстро поднимается, Угу «быстро поднятая не считается упавшей».

anc ★★★★★
()
Ответ на: комментарий от jekader

причём для её понимания тоже нужен базовый запас знаний в работе netfilter, а умеющий читать маны может и без статьи обойтись

Ваша предвзятось голословна.

А вот если-бы ТС отправил пару патчей в OpenWRT

Не говорите кому что делать и вам не укажут куда идти.

так как очень часто есть готовые решения и можно потратить время на что-то более интересное, чем велосипедостроение.

Ваша OpenWRT такой велосипед, что еще поискать надо. Мало того, он же чуть не умер, плавно перетекая от ddwrt к lede и обратно. Ибо людей, кто действительно знает этот велосипед изнутри не так уж и много.

с улучшением поддержки Multi-WAN

Ну у них нацеленность на железо, когда wan один отдельный порт, а остальные — странный свитч с элементами управляемого, где есть урезанные vlan-ы, но даже лампочки на портах надо зачастую руками зажигать по поллингу пакетов на портах. И всё это сделано такими велосипедами, что от Unix-а там не осталось НИЧЕГО. Как следствие, у меня дома маршрутизатор работает наоборот — wan порт идёт к стационарному компу, а к провайдеру порт с vlan на lan-коммутаторе. Если стационар включен, то ему отдаётся белый IP и он уже поднимает vpn до конторы и nat-ит wifi (железо wifi работает у маршрутизатора). Если не включен, то всё это делает маршрутизатор, в том числе и dlna для телевизора с фильтрацией, чтоб телек в Инет не лазил. Надо будет еще статью наконец накропать.

vodz ★★★★★
() автор топика
Последнее исправление: vodz (всего исправлений: 1)
Ответ на: комментарий от anc

Только маршрутизатора. Я ничего не пропустил?

Это был лишь пример, относящийся к теме данного поста

не используйте ext2

Такое может произойти на любой ФС, подмонтированной на запись. Не утверждаю, что такое произойдёт, но риск есть, особенно с увеличением числа устройств

Обновление ради обновления?

Очевидно, ради соответствия политике безопасности организации

Конфиги чего простите?

Конфиги всего нужного для работы системы. DNS, DHCP, IPsec, etc... На cisco, pfsense и прочем специфичном всё это - один файл, который даже в SCM можно без проблем хранить. Меньше конфигов = меньше проблем.

Какие такие ненужные сервисы?

В виртуалочке у меня бодро работает OpenWRT на 32 мегабайтах оперативки (DNS, DHCP, SSH, NAT). Его дистрибутив занимает 7 мегабайт. Странно спорить, что дистрибутив общего назначения может быть эффективнее.

fatality

Это был пример, его контекст не столь важен (в данном случае заказчик не платил за мониторинг, если Вам так интересно). Как раз «быстро поднятое не считается упавшим» и являлось определяющим в данной ситуации. Если я по своему желанию буду перезагружать такую железку - могу быть спокоен, что процесс не затянется на всю ночь.

jekader ★★★★★
()
Ответ на: комментарий от anc

не используйте ext2

Надо просто по уму делать, как у кошки. Работаем c ram-диском и делаем что хотим, а уже отдельной командой сохраняем конфиг и отмонтируем, снова монтируем и взаимно переименовываем и опять перемонтируем флешку на только чтение.

vodz ★★★★★
() автор топика
Ответ на: комментарий от jekader

на любой ФС

у ext4 с включёнными барьерами не может

anonymous
()
Ответ на: комментарий от jekader

Такое может произойти на любой ФС, подмонтированной на запись.

Может, но на той же ext3 и ext4 пока не замечено, только если дисковая система падает. Да если так уж хочется смонтируйте в ro корень (где конфиги).
И в догонку про ваши 300 в месяц. Есть в наличии древний софт роутер, в ооочень мелкой конторе, ночью и в выходные там питание постоянно вырубают, конечно по кол-ву до трехсот в месяц не дотягивает, но это уже несколько лет, маршрутиризатор вполне жив.

Конфиги всего нужного для работы системы. DNS, DHCP, IPsec, etc...

Секундочку, мы вроде про маршрутизатор а не «комбайн все в одном». Но даже если рассматривать «комбайнеров», dns если динамик не пользуем то ro достаточно. dhcp - тут да, лизы писать? Но тоже не всегда обязательно, возьмем пример dnsmasq где адрес генерится на основе мака. ipsec - так же в ro. etc - это что?

Если я по своему желанию буду перезагружать такую железку - могу быть спокоен, что процесс не затянется на всю ночь.

Да я тоже не парюсь в этом плане и на софт роутере. А сдохнуть может любая. Кстати у мню поддиванный ребутается быстрее чем asus ac66u.

anc ★★★★★
()
Ответ на: комментарий от vodz

И да и нет. В целом-то все верно, все должно быть разумно достаточно. Но вот мы пишем конфиг и в этот счастливый момент, хренак падаем, почему неважно, и встречает киска своего пушистого зверька.
Я в своей практике прошел и удаленную перепрошивку пром. контроллеров, не поверите, оч. страшно это делать находясь далеко от него. В случае неудачи иметь тебя будут долго, нудно, и большое кол-во вышестоящих.

anc ★★★★★
()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от vodz

Ваша OpenWRT такой велосипед, что еще поискать надо.

То, что Вы имеете ввиду - это костыли. Не удивлюсь, если код OpenWRT и Cisco IOS наполовину состоит из костылей. Это плохо, но часто встречается. В современной динамично развивающейся индустрии считается, что костыль сейчас - это лучше, чем красивый код через 10 лет. А Велосипед - это уже результат лицезрения чужих костылей и желание расставить их по-своему :) В особо тяжёлых случаях перерастает в NIH но не будем об этом.

Пару раз приходилось сталкивался костыльными проектами, в которых ничего не понятно, но нужен какой-то функционал. Просто засылал туда feature request и обычно уже в течении пары недель мне либо дописывали функционал, либо объясняли что всё на месте, просто документацию никто 5 лет не обновлял. Это было гораздо быстрее, чем писать с нуля либо разбираться в странном коде. Возможно, поэтому я тут и топлю теперь за вклад в существующие проекты.

jekader ★★★★★
()
Ответ на: комментарий от anc

И да и нет. В целом-то все верно, все должно быть разумно достаточно. Но вот мы пишем конфиг и в этот счастливый момент, хренак падаем, почему неважно, и встречает киска своего пушистого зверька.

Вот потому у вас и такое бесконечное переругивание с другими собеседниками, потому что сплошная лирическая болтология ни о чём. Вы вообще вчитывались в то, что назвали «и да и нет»? Писать конфиг надо в виде config.new, потом убедиться что все буфера записаны, потом переименовать старый в config.old, потом снова буфера сфлюшить (и если тут упало, то грузить надо именно его: config.old если нет просто config) и только потом переименовывать config.new в config. А кошка вообще, если знать, очень устойчива к пушным зверькам, ибо там есть rom, который умеет загрузить софт и по ftp/tftp и даже по xmodem.

vodz ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.