Перейти до

Ubilling + NAS на FreeBSD бортжурнал починаючого адміна


Рекомендованные сообщения

  • Відповіді 1,8k
  • Створено
  • Остання відповідь

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Вітаю Татко!   

Не так вже й багато   Ход коньом:   # cat /bin/clear_dhcpdlog #!/bin/sh /bin/echo > /var/log/dhcpd.log /usr/local/etc/rc.d/isc-dhcpd restart # chmod a+x /bin/clear_dhcpdlog # crontab -e

http://wiki.ubilling.net.ua/doku.php?id=userstats       Расист? http://wiki.ubilling.net.ua/doku.php?id=userstats

Posted Images

 

 

dummynet скомпилирован в ядре
 

возможно после перезагрузки применились параметры /etc/sysctl.conf , 

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

net.inet.ip.dummynet.io_fast=1

Ссылка на сообщение
Поделиться на других сайтах

Доброе утро.

 

 

 

NAS  на чем? микрот?

Нет - rscriptd.

 

 

 

dummynet скомпилирован в ядре

Конечно же.

 

 

 

net.inet.ip.dummynet.io_fast=1

Так и есть, присутствует.

 

 

 

а я б пайпы смотрел

А вот том-то и дело, что ipfw pipe show ровным счётом ничего не выдаёт.

Ссылка на сообщение
Поделиться на других сайтах
# cat /etc/sysctl.conf
# custom NAS config
net.inet.ip.fw.one_pass=1
net.inet.tcp.nolocaltimewait=1
net.inet.ip.portrange.randomized=0
net.inet.ip.portrange.first=1024
net.inet.ip.portrange.last=65535
net.inet.ip.forwarding=1
net.inet.ip.dummynet.io_fast=1
 
# hardcore
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
net.inet.icmp.drop_redirect=1
#net.inet.icmp.log_redirect=0
#net.inet.ip.redirect=0
#net.inet.ip.sourceroute=0
#net.inet.ip.accept_sourceroute=0
net.inet.icmp.bmcastecho=0
net.inet.icmp.maskrepl=0
net.inet.tcp.drop_synfin=1
net.inet.tcp.syncookies=1
net.inet.tcp.msl=15000
 
Тюнингов больше никаких.
 

 

# cat /boot/loader.conf
kern.hz="1000"
ipfw_load="YES"
net.inet.ip.fastforwarding=1
net.inet.ip.fw.default_to_accept="1"
libalias_load="YES"
ipfw_nat_load="YES"
dummynet_load="YES"
# ногами сильно не пинать
pf_load="YES"
 
#some tuning
hw.em.rxd=4096
hw.em.txd=4096
hw.em.rx_process_limit=4096
hw.em.max_interrupt_rate=32000
 
kern.ipc.nmbclusters=34768
kern.ipc.nmbufs=141072
 
net.link.ifqmaxlen=10240
 
net.isr.direct=1
net.isr.defaultqlimit=4096
net.isr.direct_force=1
net.isr.dispatch=direct
net.isr.bindthreads=0
net.isr.numthreads=4
net.isr.maxthreads=8
net.isr.maxprot=8
net.isr.maxqlimit=10240
 
#hw.intr_storm_threshold=9000
 
Відредаговано ISK
Ссылка на сообщение
Поделиться на других сайтах

И да, напоследок же: #cat /etc/firewall.conf

 

#!/bin/sh
 
# Interfaces setup
LAN_IF="em1"
WAN_IF="em0"
 
# Netflow stats (Ubilling external IP must be here)
/usr/local/sbin/softflowd -i ${LAN_IF} -n 5.155.155.250:42111
 
# Firewall command
FwCMD="/sbin/ipfw -q"
 
${FwCMD} -f flush
${FwCMD} -f pipe flush
${FwCMD} -f queue flush
${FwCMD} table all flush
 
# Networks define
${FwCMD} table 2 add 192.168.100.0/23
${FwCMD} table 2 add 192.168.200.0/23
${FwCMD} table 9 add 192.168.100.0/23
${FwCMD} table 9 add 192.168.200.0/23
${FwCMD} table 9 add 5.155.155.3/32
${FwCMD} table 9 add 5.155.155.5/32
 
# Me and my Ubilling server
${FwCMD} table 33 add 192.168.15.2/31
${FwCMD} table 33 add 192.168.100.1/31
${FwCMD} table 33 add 192.168.200.1/31
 
# NAT2 migrated to PF
#${FwCMD} nat 1 config log ip 5.155.155.3 reset same_ports deny_in
#${FwCMD} nat 2 config log ip 5.155.155.5 reset same_ports deny_in
#${FwCMD} table 30 add 192.168.100.0/23 1
#${FwCMD} table 30 add 192.168.200.0/23 2
#${FwCMD} table 31 add 5.155.155.3 1
#${FwCMD} table 31 add 5.155.155.5 2
#${FwCMD} add 6000 nat tablearg ip from table\(30\) to not table\(9\) via ${WAN_IF}
#${FwCMD} add 6001 nat tablearg ip from any to table\(31\) via ${WAN_IF}
 
# Shape
${FwCMD} add 12001 pipe tablearg ip from any to table\(4\) via ${LAN_IF} out
${FwCMD} add 12000 pipe tablearg ip from table\(3\) to any via ${LAN_IF} in
 
# Security and BitTorrent block rules
${FwCMD} add 3 deny ip6 from any to any
${FwCMD} add 3 deny all from any to any dst-port 1337,2710,3277,5351,6889-6999,7266,7272
 
# Allow access to me and my Ubilling server
${FwCMD} add 101 allow all from table\(33\) to any
${FwCMD} add 101 allow all from any to table\(33\)
 
# Allow access over SSH from LAN and deny SSH snd DNS from Internet to me
${FwCMD} add 9 allow ip from any to me dst-port 22 via ${LAN_IF}
${FwCMD} add 10 deny all from any to me dst-port 22,53 via ${WAN_IF}
 
# Debtors forwarding and DNS rule
${FwCMD} add 4 allow ip from table\(2\) to me dst-port 80,443 via ${LAN_IF}
${FwCMD} add 4 allow ip from me to table\(2\) src-port 80,443 via ${LAN_IF}
${FwCMD} add 4 allow ip from table\(2\) to 192.168.15.2 dst-port 53 via ${LAN_IF}
${FwCMD} add 4 allow ip from 192.168.15.2 to table\(2\) src-port 53 via ${LAN_IF}
#${FwCMD} add 6 fwd 127.0.0.1,80 ip from table\(47\) to not me dst-port 80
#${FwCMD} add 7 fwd 127.0.0.1,80 ip from table\(47\) to not me dst-port 443
 
${FwCMD} table 7 add 127.0.0.1
${FwCMD} table 7 add 192.168.100.1
${FwCMD} table 7 add 192.168.100.2
${FwCMD} table 7 add 192.168.200.1
${FwCMD} table 7 add 192.168.200.2
${FwCMD} add 5 skipto 8 ip from table\(47\) to table\(7\)
${FwCMD} add 5 skipto 8 ip from table\(7\) to table\(47\)
 
# Allow access to my http for all
${FwCMD} add 62000 allow tcp from any to me dst-port 80
${FwCMD} add 62000 allow tcp from me to any src-port 80
 
# Default block policy
#${FwCMD} add 65533 deny all from table\(2\) to any via ${LAN_IF}
${FwCMD} add 65535 allow all from any to any
 
# ==== CUSTOM FIREWALL CONFIG ====
 
${FwCMD} add 62100 allow tcp from table\(2\) to table\(17\) dst-port 80
${FwCMD} add 62100 allow tcp from table\(17\) to table\(2\) src-port 80
 
Вроде же всё норм. Но пайпы пустые и шейпинг не пашет:(
Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...

Всем добрый день

Не подскажете информация на ссилке еще актуално,можно с этой статей создать удаленный микротик нас

https://nixrecords.wordpress.com/2015/07/20/%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-remote-mikrotik-nas-%D0%B8%D0%B7-ubilling/

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

Все пакеты в бридже обрабатываются программно. Была попытка сделать hw-offload для бридже на RouterOS 6.30.rc36, но она провалилась.

 

На самом микротике можно поднять кучу внутренних интерфейсов с абонентскими подсетями, как на каждом порту, так и несколько сетей на одном порту.

 

Если абоненты на микротике находятся в разных сетях с Ubilling, то не будет работать arp ping, поиск MAC адреса и т.п.

Но управление DHCP, firewall и queue работает.

Ссылка на сообщение
Поделиться на других сайтах

 

Всем добрый день

Не подскажете информация на ссилке еще актуално,можно с этой статей создать удаленный микротик нас

https://nixrecords.wordpress.com/2015/07/20/%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-remote-mikrotik-nas-%D0%B8%D0%B7-ubilling/

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

Все пакеты в бридже обрабатываются программно. Была попытка сделать hw-offload для бридже на RouterOS 6.30.rc36, но она провалилась.

 

На самом микротике можно поднять кучу внутренних интерфейсов с абонентскими подсетями, как на каждом порту, так и несколько сетей на одном порту.

 

Если абоненты на микротике находятся в разных сетях с Ubilling, то не будет работать arp ping, поиск MAC адреса и т.п.

Но управление DHCP, firewall и queue работает.

 

Спасибо за ответь,сделал экперимент,на мой взглядь лучше делать нас как в доке убиллинга микротик в качестве нас,там все просто

Ссылка на сообщение
Поделиться на других сайтах

Привет  

 

Подключили абонента все работало нормально, но в один момент начал не получать по дхцп 
в логи пишет 


Jul 22 23:23:29 Ubilling dhcpd: DHCPDISCOVER from e4:be:ed:50:6f:e5 via em0
Jul 22 23:23:29 Ubilling dhcpd: DHCPOFFER on 172.16.0.12 to e4:be:ed:50:6f:e5 via em0

куда копать ?  до этого работало нормально все


 
Ссылка на сообщение
Поделиться на других сайтах

Проблема с пон портом, сейчас ищем решение.  Интересная ситуация, виден мак роутера, но биллинг  не может присвоить по ДХЦП айпишку.  Впервые с таким встречаюсь. после перезагрузки всей пон карты все работает.  

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...

при попытке сменить скорость тарифа в билинге выскочила ошибка:

 

wrong data input: INSERT INTO `speeds` ( `id` , `tariff` , `speeddown` , `speedup` , `burstdownload` , `burstupload` , `bursttimedownload` , `burstimetupload` ) VALUES ( NULL , 'Home_extra', '0', '0', '', '', '', '' );

 

 

и в данный момент тариф без скорости, что случилось?

Ссылка на сообщение
Поделиться на других сайтах

аналогично убил еще один тариф, создал новый тариф, но при попытке установить скорость выскакивает та же ошибка..... 

Ссылка на сообщение
Поделиться на других сайтах

 

 

и в данный момент тариф без скорости, что случилось?

Криво обновились походу. Причем давно уже.

 

Покажите

1. и show create table `speeds`

2. cat /usr/local/www/apache24/data/billing/RELEASE

Ссылка на сообщение
Поделиться на других сайтах

 

 

show create table `speeds`

я не "силен" в мускуле, команда не "полная"?

 

 

 

cat /usr/local/www/apache24/data/billing/RELEASE

0.8.2 rev 5482

 

в ближайшее время обновлюсь до 0.8.3 

Ссылка на сообщение
Поделиться на других сайтах

 

 

Криво обновились походу.

оно!

Понадеялся на менеджер обновлений.....

Ввел вручную все рекомендации и все заработало. 

Ссылка на сообщение
Поделиться на других сайтах

1. Полная, полная. Вот ткнитее ее в девконсоль и просмотрите, чего она показывает. Мускуль так и учится :)

2. Та пора бы, там вагон хороших вещей, включая починки того, что мы сломали в 0.8.2.

Відредаговано nightfly
Ссылка на сообщение
Поделиться на других сайтах

підкажіть по абонплаті: 

якщо абонплата знімається раз в місяць, 5-го числа, чому в модулі Рух коштів, при залишку на рахунку 3грн пише: Поточний стан рахунку: 3, чого повинно вистачити, ще на 28 днів використання послуги або достатньо до 01.09.2017 згідно тарифу pon-50 (150 / місяць)

Як поправити?

Ссылка на сообщение
Поделиться на других сайтах

 

 

1. Полная, полная. Вот ткнитее ее в девконсоль и просмотрите, чего она показывает. Мускуль так и учится

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

Ссылка на сообщение
Поделиться на других сайтах

как правильно очистить старые записи UHW? в журнале DHCP пишет:

 

Aug 8 19:35:20 Billing dhcpd: uid lease 172.32.0.170 for client xx:xx:xx:xx:xx:xx is duplicate on ourisp

Aug 8 19:35:20 Billing dhcpd: DHCPREQUEST for 172.16.1.99 from xx:xx:xx:xx:xx:xx via igb1

Aug 8 19:35:20 Billing dhcpd: DHCPACK on 172.16.1.99 to xx:xx:xx:xx:xx:xx via igb1

Відредаговано a_n_h
Ссылка на сообщение
Поделиться на других сайтах

как правильно очистить старые записи UHW? в журнале DHCP пишет:

 

Aug 8 19:35:20 Billing dhcpd: uid lease 172.32.0.170 for client xx:xx:xx:xx:xx:xx is duplicate on ourisp

Aug 8 19:35:20 Billing dhcpd: DHCPREQUEST for 172.16.1.99 from xx:xx:xx:xx:xx:xx via igb1

Aug 8 19:35:20 Billing dhcpd: DHCPACK on 172.16.1.99 to xx:xx:xx:xx:xx:xx via igb1

rm -rf /var/db/dhcpd.leases* && /usr/local/etc/rc.d/isc-dhcpd restart

И уменьшите время лизы

Ссылка на сообщение
Поделиться на других сайтах

 

 

rm -rf /var/db/dhcpd.leases* && /usr/local/etc/rc.d/isc-dhcpd restart
 

спасибо за ответ,

а смысл:

 

 

И уменьшите время лизы
 

у меня "по умолчанию" 1 час, сколько нужно "оптимально"?

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від sanyadnepr
      Приветствую всех.
      Подскажите пожалуйста где копнуть и нет ли проблемы со стороны протокола взаимодействия сити24 или возможно не учтена необходимая проверка в модуле сити24 в Ubilling, пока писал понял что похоже в проверке payID, но это не точно.  
      Недавно обнаружилось с сити24 начали прилетать дубликаты платежей, в целом платежей мало, два одинаковых запроса Pay с одинаковым transactionID и payID в одну секунду одному платежному ID при этом биллинг "думает" примерно чуть больше минуты и отвечает одним ответом <result>0</result>, сити24 утверждает что ответ они не получили и по протоколу дальше повторяет запросы дублем, биллинг ответ и так по кругу, сити24 спрашивает каким образом с одинаковым payID от сити24 билл продолжает обрабатывать запросы и пополнять абоненту счет раз в 5 минут примерно, на одну и туже сумму, ведь этот payID уже был обработан предполагают сити24 согласно протоколу.
      Конечно есть вопрос к сити24 зачем они дублем присылают два запроса, но они отвечают что эта ситуация учтена в протоколе и проблема на стороне биллинга, потому что он пополняет счет по уже обработанному одинаковому payID.
      При этом transactionID в дублях одинаковый, но с каждым новым дублем разный.
      Если зафаерволить запросы от сити24, но оставить возможность отвечать то после блокировки билл отправляет 2-3 минуты 6 ответов <account>0001</account>  <result>0</result>.
      После снятия блокировки, дубли и платежи нескольких проблемных абонентов прилетают так же по кругу, при этом и с некоторыми новыми пополнениями происходит аналогичная ситуация.
      В openpayz в платежах transactionID и не видно payID.
    • Від nightfly
      Ubilling 1.4.3 rev 9058 The Bladewood Grove
       
      Зміни в структурі БД. alter.ini: нові опції OPHANIMFLOW_ENABLED та OPHANIMFLOW_URLS котрі вмикають та керують інтеграцією з OphanimFlow. alter:ini: нова опція PHOTOSTORAGE_POSTPROCESSING, що вмикає післяобробку зображень при завантаженні в Сховище зображень. alter:ini: нова опція PHOTOSTORAGE_WATERMARK, що вмикає розміщення вотермарки на всіх зображеннях, що завантажуються. alter:ini: нова опція PHOTOSTORAGE_RECOMPRESS, що вмикає зміну компрессії завантажених зображень. alter:ini: нова опція PHOTOSTORAGE_AUTORESIZE, що вмикає автоматичне та лагідне масштабування зображень конячих розмірів. alter:ini: нова опція PHOTOSTORAGE_DRAWIMGINFO, що вмикає вдруковування в зображення відлагоджувальної інформації. alter.ini: нова опція ONDEMAND_CHARTS, що вмикає відкладене завантаження графіків завантаження користувацької смуги. userstats.ini: нова опція OPHANIM_ENABLED, що вмикає інтеграцію OphanimFlow в кабінеті користувача. Модуль Заздрість: тепер авторизаційні дані пристроїв, не відображаються в списку пристроїв. Модуль “Заздрість”: при створенні та редагуванні пристроїв, для полів “пароль” та “enable пароль” тепер використовуються інпути паролів. Модуль “Заздрість”: заздрісним пристроям додано нове поле “Порт”. Тепер в скриптах можна використовувати, відповідний макрос {PORT}. Модуль “Статистика трафіку користувача”: проведено радикальний рефакторинг. Модуль “Статистика трафіку користувача”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Статистика трафіку користувача”: виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Модуль “Статистика трафіку користувача”: додано можливість відображення графіків за останню годину з OphanimFlow. Модуль “Користувачі”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Сховище зображень”: тепер додатково перевіряє завантажувані зображення на тему їх валідності. Модуль “Фінансові операції”: виправлено відображення суми платежів користувача. Remote API: новий виклик ophanimtraff, який просто бере і синхронізує локальну БД з віддаленими джерелами OphanimFlow. Remote API: виклик userbynum тепер також опційно містить поле з “Платіжним ID” користувача. Глобально: у всіх полях вводу паролів, окрім форми входу, тепер відображається елемент керування “показати/приховати” пароль. Кабінет користувача: в модулі “Трафік” додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Кабінет користувача: в модулі “Трафік” виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Кабінет користувача: в модулі “Відеоспостереження” для NVR WolfRecorder замінено розділювач попередньо заповнених даних авторизації. OpenPayz: додано frontend portmonemulti, для отримання платежів від різних контрагентів. Інформацію по контрагентам бере з біллінгу, також використовую розширену інформацію контрагента. Платіжна система в контрагенті мусить бути створена, як PORTMONE 1984tech: додано функціонал генерації RPZ для isc-bind, спасибі @misterromanbush  
      Повний чейнджлог
      Оновлена демка
       

    • Від mac
      Здається, після оновлення PHP 7.4 до PHP 8.2 feesharvester припинив працювати:
       
      /usr/local/bin/curl "http://127.0.0.1/billing/?module=remoteapi&key={SERIAL}&action=feesharvester" <br /> <b>Fatal error</b>: Uncaught TypeError: Unsupported operand types: string - string in {UBPATH}/billing/api/libs/api.fundsflow.php:570 Stack trace: #0 {UBPATH}/billing/modules/remoteapi/feesharvester.php(22): FundsFlow-&gt;harvestFees('2024-01') ...  
      Невеличке розслідування врешті з'ясувало, що це через наявність пробілу у деяких логінах абонентів. Як так сталося? Тому що інколи був неуважно додан трейлінг пробіл до номеру будинка і цей пробіл потрапив до логіну абоненту. Логін абоненту неможливо змінити ніяким чином штатними засобами. Я не розглядаю створення нового абонента для усунення помілки.

      Був обран такий шлях вирішення проблеми. Заміну функції php explode() знайшов у мережі. Мабуть це станеться в нагоді:

       
      diff api.fundsflow.php.bak api.fundsflow.php.new 559c559 < $eachfee = explode(' ', $eachline); --- > $eachfee = preg_split("~(?<!\\\\)(?:\\\\{2})*'[^'\\\\]*(?:\\\\.[^'\\\\]*)*'(*SKIP)(*F)|\s+~s" , $eachline);  
    • Від Zend
      Продам сабж.
      2 контроллера CA07336-C001, в каждом по одном интерфейсном модуле CA07336-C009 (2 x 1Gbps iSCSI)
      HDD: 24 x 900GB SAS 10K
      Исправен.
      С ним могу продать шкафчик того же вендора.
       
      Стоимость - $4000, торг
       

    • Від Dilan
      Собственно ищу кто сделает такую связку с нуля под ключ. Тз высылаю в личку. Заранее спасибо.

×
×
  • Створити нове...