Jump to content

Debian: BGP + SNAT на одном тазике


Recommended Posts

Подскажите.

Понадобилось на пограничнике на котором крутиться 4 FW BGP сессий (Quagga) замутить SNAT, несколько серых пулов, в несколько белых адресов.

Собственно какой возник вопрос: Нужно на какой-то интерфейс прописать адреса в которые будет этот самый SNAT, на какой? Если бы на машине не было бы BGP то естественно на аплинк интерфейс прописал бы... Реально ли вообще, или только MASQUERADE?

Link to post
Share on other sites

Да, нужно.

Прописывать на локальный интерфейс.

pf позволяет не прописывать, но вы можете отгрести пару проблем.

Link to post
Share on other sites

Да, нужно.

Прописывать на локальный интерфейс.

pf позволяет не прописывать, но вы можете отгрести пару проблем.

Какой pf ?) У меня Linux Debian, собственно в названии темы указано...

По идее в дебиане тоже можно адреса не прописывать, но как вы правильно заметили, можно отгрести проблем... 

Link to post
Share on other sites

Какие ещё проблемы?

Не нужно ничего прописывать, ставьте любой диапазон, маршрутизируемый на этот тазик, и вперёд.

Edited by KaYot
Link to post
Share on other sites

Какие ещё проблемы?

Не нужно ничего прописывать, ставьте любой диапазон, маршрутизируемый на этот тазик, и вперёд.

Ну хотя бы то, что адреса эти пинговаться не будут... А ещё, если эти адреса попадают в blackhole route, оно вообще будет работать? Не особо просто хочется эксперементы ставить на работающем бордере...

 

А если на lo адреса прописать, будет работать?

Edited by Ромка
Link to post
Share on other sites

 

Да, нужно.

Прописывать на локальный интерфейс.

pf позволяет не прописывать, но вы можете отгрести пару проблем.

Какой pf ?) У меня Linux Debian, собственно в названии темы указано...

 

Вы отстали от жизни. Пакет pf или pf-kernel

Edited by vlad11
Link to post
Share on other sites

Какие ещё проблемы?

Не нужно ничего прописывать, ставьте любой диапазон, маршрутизируемый на этот тазик, и вперёд.

 

Мое дело предупредить о проблемах.

Например, при использовании OSPF в сети.

Link to post
Share on other sites

Пинговаться им и не обязательно. Ну а блекхол вешается для маршрутизации в сторону "клиентов", трафик самого сервера туда не попадает.

Использовали когда-то такую схему(bgp-gate + snat) на линухе, все поднялось с полпинка и работало много лет. Ничего никуда не вписывали, это как раз извращения в стили винды или БЗДи.

Link to post
Share on other sites

Мое дело предупредить о проблемах.

Например, при использовании OSPF в сети.

Так вы поведайте о возможных проблемах. Но только не просто умными фразами "при использовании OSPF", а конкретно.
Link to post
Share on other sites

pf позволяет не прописывать

"Слышал звон, да не знаю где он"...

В pf патчсете (pf-kernel) нет НИЧЕГО, что касается сетевой подсистемы. И к бздевому pf он никакого отношения не имеет.

А упомянутый вами пакет pf для дебиана - он ставится ТОЛЬКО на дебиан с бздевым ядром.

 

Ну хотя бы то, что адреса эти пинговаться не будут... А ещё, если эти адреса попадают в blackhole route, оно вообще будет работать? Не особо просто хочется эксперементы ставить на работающем бордере...

Будет работать. Оно вроде как в прероутинге развернется же в правильный dst.

Но я адрес поднимаю. И чтобы пинговалось, и на случай 2 и более бордюров - чтобы на нужный трафик шел...

 

А если на lo адреса прописать, будет работать?

Будет.
Link to post
Share on other sites

Без проблем.

Прописывать подсети никуда не нужно, нужен только blackhole. Но он нужен в любом случае.

Здесь какая фишка: входящие пакеты попадают в prerouting, где им переписываются dst на внутренние адреса. Соответственно - в blackhole они не попадут, туда попадёт только всякий разный мусор - как, впрочем, и задумано.

Edited by Abram
Link to post
Share on other sites

Работать будет на ура.... Но вот пытаюсь вспомнить о граблях - давно было....вспомню - опишу. Система стояла центос. Сейчас дебиан.

Попали и определились - из-за отсутствия адресов. Кажется что-то с трекконекшн... вспомню - накалякаю.

После этого повесили адреса на внутренний и забыли о граблях)))))

Edited by Norther
Link to post
Share on other sites

 

Мое дело предупредить о проблемах.

Например, при использовании OSPF в сети.

Так вы поведайте о возможных проблемах. Но только не просто умными фразами "при использовании OSPF", а конкретно.

 

А зачем? Вы ж меня не наняли траблшудить проблемы с OSPF.

Об использовании интерфейсов и сетей в OSPF явно разжевано в книжках Cisco по OSPF.

Edited by vlad11
Link to post
Share on other sites

Работать будет на ура.... Но вот пытаюсь вспомнить о граблях - давно было....вспомню - опишу. Система стояла центос. Сейчас дебиан.

Попали и определились - из-за отсутствия адресов. Кажется что-то с трекконекшн... вспомню - накалякаю.

После этого повесили адреса на внутренний и забыли о граблях)))))

Т. е. получается без разницы на какой интерфейс адреса прописать?

-o interface я так понимаю, можно вообще не указывать?

Link to post
Share on other sites

Подскажите.

Понадобилось на пограничнике на котором крутиться 4 FW BGP сессий (Quagga) замутить SNAT, несколько серых пулов, в несколько белых адресов.

Собственно какой возник вопрос: Нужно на какой-то интерфейс прописать адреса в которые будет этот самый SNAT, на какой? Если бы на машине не было бы BGP то естественно на аплинк интерфейс прописал бы... Реально ли вообще, или только MASQUERADE?

И при чем тут BGP? Маскарадьте под аплинка по принципу - если сюда, то тогда ты вася и таких 4 правила и все будет работать. Маскарадинг идет то после маршрутизации.
Link to post
Share on other sites

Т. е. получается без разницы на какой интерфейс адреса прописать?

Угу.

 

-o interface я так понимаю, можно вообще не указывать?

Угу. Но лучше исключить исходящий для lan ифейса (! -o eth0) - ну если какая загогулина с маршрутизацией случится, к примеру, 1 маршрут на узле сети выпадет (ну потерялся рефреш из-за перегруженного линка), чтобы не пошел трафик через нат. Edited by NiTr0
Link to post
Share on other sites

 

Работать будет на ура.... Но вот пытаюсь вспомнить о граблях - давно было....вспомню - опишу. Система стояла центос. Сейчас дебиан.

Попали и определились - из-за отсутствия адресов. Кажется что-то с трекконекшн... вспомню - накалякаю.

После этого повесили адреса на внутренний и забыли о граблях)))))

 

Т. е. получается без разницы на какой интерфейс адреса прописать?

-o interface я так понимаю, можно вообще не указывать?

Нет. Айпи прописываются на внутренний интерфейс.На каждый интерфейс аплинка должны быть свои правилаа маскарадинга, идентичные по фейкам и наружке! Иначе - точно грабли. Edited by Norther
Link to post
Share on other sites

 

Подскажите.

Понадобилось на пограничнике на котором крутиться 4 FW BGP сессий (Quagga) замутить SNAT, несколько серых пулов, в несколько белых адресов.

Собственно какой возник вопрос: Нужно на какой-то интерфейс прописать адреса в которые будет этот самый SNAT, на какой? Если бы на машине не было бы BGP то естественно на аплинк интерфейс прописал бы... Реально ли вообще, или только MASQUERADE?

И при чем тут BGP? Маскарадьте под аплинка по принципу - если сюда, то тогда ты вася и таких 4 правила и все будет работать. Маскарадинг идет то после маршрутизации.

 

Маскарадинг не вариант, потому как нужно несколько серых блоков проНАТить в несколько белых адресов.

Link to post
Share on other sites

 

pf позволяет не прописывать

"Слышал звон, да не знаю где он"...

В pf патчсете (pf-kernel) нет НИЧЕГО, что касается сетевой подсистемы. И к бздевому pf он никакого отношения не имеет.

А упомянутый вами пакет pf для дебиана - он ставится ТОЛЬКО на дебиан с бздевым ядром.

 

ТС  не указал явно какое ядро использует :)

pf-kernel - я сужу по презентации 2012 года, там заявлен все-таки некий сетевой функционал. В каком объеме на сегодняшний день - хз.

Link to post
Share on other sites

 

 

pf позволяет не прописывать

"Слышал звон, да не знаю где он"...

В pf патчсете (pf-kernel) нет НИЧЕГО, что касается сетевой подсистемы. И к бздевому pf он никакого отношения не имеет.

А упомянутый вами пакет pf для дебиана - он ставится ТОЛЬКО на дебиан с бздевым ядром.

 

ТС  не указал явно какое ядро использует :)

pf-kernel - я сужу по презентации 2012 года, там заявлен все-таки некий сетевой функционал. В каком объеме на сегодняшний день - хз.

 

Ядро linux. Нужно было бы ядро FreeBSD, наверно поставил бы OS FreeBSD... :)

Не сунул бы движек от москвича в жигули... Либо Жигули, либо Москвич!

Edited by Ромка
Link to post
Share on other sites

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

Да нет никаких граблей. У меня на бордюре с парой аплинков одно правило для ната (пул серых адресов для тех кому реальных не хватило + несколько залов с серыми адресами) - никаких проблем.
Link to post
Share on other sites

pf-kernel - я сужу по презентации 2012 года, там заявлен все-таки некий сетевой функционал. В каком объеме на сегодняшний день - хз.

Вы посмотрите по вашей же ссылке. Все патчи патчсета описаны.
Link to post
Share on other sites

 

 

Подскажите.

Понадобилось на пограничнике на котором крутиться 4 FW BGP сессий (Quagga) замутить SNAT, несколько серых пулов, в несколько белых адресов.

Собственно какой возник вопрос: Нужно на какой-то интерфейс прописать адреса в которые будет этот самый SNAT, на какой? Если бы на машине не было бы BGP то естественно на аплинк интерфейс прописал бы... Реально ли вообще, или только MASQUERADE?

 

И при чем тут BGP? Маскарадьте под аплинка по принципу - если сюда, то тогда ты вася и таких 4 правила и все будет работать. Маскарадинг идет то после маршрутизации.

Маскарадинг не вариант, потому как нужно несколько серых блоков проНАТить в несколько белых адресов.
Пробовали маскарадить блоки фейка в адрес аплинка - все работало. Это была просто тестовая необходимость. Одинаковые правила айпитаблес на каждый интерфейс аплинка.
Link to post
Share on other sites

 

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

Да нет никаких граблей. У меня на бордюре с парой аплинков одно правило для ната (пул серых адресов для тех кому реальных не хватило + несколько залов с серыми адресами) - никаких проблем.
Если натить по правилу "куда угодно" тогда да. Вы не забыли - четыре фулвью?

Это актуально, если натить под адрес аплинка в каждый интерфейс отдельно!

Edited by Norther
Link to post
Share on other sites

 

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

Да нет никаких граблей. У меня на бордюре с парой аплинков одно правило для ната (пул серых адресов для тех кому реальных не хватило + несколько залов с серыми адресами) - никаких проблем.

 

Идентичная проблема, кому не хватило белых, даем серые. На данный момент есть отдельно бордер, и парочка НАСов, но с нынешними тенденциями о возможных веерных отключениях эл. энергии озаботились экономией эл. энергии (вернее экономии на бесперебойном питании), решили заменить 3 тазика, на один мочный, вот и встал вопрос SNAT на бордере...

Edited by Ромка
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By axl72
      Після апгрейду сервера виявилось, що пакет flow-tools, що був у Дебіан 10, зник , починаючи з версії 11. Пошук по офсайту не дав ніяких пояснень. Може шановне панство підкаже, який пакет передбачений на заміну flow-tools для реалізації netflow-коллектора? Чи не гаяти часу і збирати самостійно?..
    • By FOP_Osypenko
      Маємо VPS сервер на Debian 10 і модем MikroTik LHG LTE6. Задача наступна: налаштувати інтернет через VPN тунель.
       
      На сервер Debian 10 встановив і налаштував WireGuard скриптом: https://github.com/angristan/wireguard-install
      Цим же скриптом згенерував файл налаштувань для клієнта wg0-client-mikrotik.conf:
      [Interface] PrivateKey = yBen7Arcy/jRqB3zqJiPn88IHPCoHYRmRW3wT97D2F0= Address = 10.66.66.2/32,fd42:42:42::2/128 DNS = 94.140.14.14,94.140.15.15 [Peer] PublicKey = 004DOgL44aNB5tWmyoifjiGmi0qBIHdp3Og21EdjUV0= PresharedKey = P8nLh48thuDSvNMJ7XPqMknWp4hpfxE4RUIuf5UBGqQ= Endpoint = 145.239.95.214:53849 AllowedIPs = 0.0.0.0/0,::/0  
      Прошивку на Mikrotik оновив до версії 7.1beta5. В цій версії вже вбудована підтримка WireGuarg.
      В головному меню WinBox обираю пункт WireGuard і відкривається таке вікно:

       
      Створюю новий інтерфейс wiregoard1 з типовими параметрами. Змін ніяких не вношу.

       
      Далі переходжу на вкладку Peers і там створюю новий тунель. Вписую параметри з клієнтського файлу конфігурації.

       
      Далі відкриваю вікно Address List і додаю адресу. Параметри знову беру з клієнтського файлу конфігурації.

       
      Після цих налаштувань нічого не змінюється й інтернет через VPN тунель не йде. Можливо щось не так налаштовую чи не повністю?
    • By axl72
      Здравствуйте , коллеги.
       
      Поднимаем iptv на линукс-сервере с несколькими разными  DVB картами от TBS.
      Есть одна неприятность. При перезагрузке нумерация DVB адаптеров непредсказуемо меняется. Соответственно конфиги приходится каждый раз подправлять.
      Используем Debian 10.2 Buster  c Systemd.
      Предполагаю, что это происходит из за распараллеливания процесса загрузки и определения оборудования в Systemd.
      Думал о том, что бы использовать udev rules, но из за специфики именования dvd адаптеров не понял как это сделать.
       
      Наверняка уже кто то сталкивался  с таким поведением, как решили проблему? 
      Может отказаться от Systemd и установить SysVinit ? поможет ли?
      Или вообще имеет смысл откатиться на более древний дистрибутив Debian ? И будет ли на нем работать Astra 5.xx
       
      Предвижу ответы в стиле "Вот возьми , да и проверь сам", именно так мы и сделаем, но хотелось бы минимизировать downtime - сервер уже в продакшене.
       
    • By Archy_k
      Всем привет.
      Столкнулся с проблемой: не обновился сертификат SSL.
      Попробовал вручную запустить скрипт:
      # /etc/letsencrypt/certbot/certbot-auto renew Creating virtual environment... Installing Python packages... /opt/eff.org/certbot/venv/bin/python: No module named pip.__main__; 'pip' is a package and cannot be directly executed Traceback (most recent call last):   File "/tmp/tmp.qUAUXX5FHZ/pipstrap.py", line 177, in <module>     sys.exit(main())   File "/tmp/tmp.qUAUXX5FHZ/pipstrap.py", line 149, in main     pip_version = StrictVersion(check_output([python, '-m', 'pip', '--version'])   File "/usr/lib/python2.7/subprocess.py", line 544, in check_output     raise CalledProcessError(retcode, cmd, output=output) subprocess.CalledProcessError: Command '['/opt/eff.org/certbot/venv/bin/python', '-m', 'pip', '--version']' returned non-zero exit status 1 И вот какой ответ получаю.
      Подскажите пожалуйста, как с этим справиться...
      Сервер с Debian и nginx
      Заранее спасибо.
    • By Futura
      Имеется тазик на Debian c двумя сетевухами:
      Internet-eth0<NAT<eth1-PPPoE
      Если установить еще одну карточку (пусть будет eth2) c резервным каналом
      как организовать автоматическое переключение при падении основного и корректную работу NAT?
×
×
  • Create New...