LINUX.ORG.RU

Сообщения ae1234

 

Proxmox 7 3 4 потеря пакетов

может кто знает
сервер с proxmox 7.3.4
на нем 20-30 виртуалок с виндой и линуксами
на всех сеть в virtio

проблема обнаружилась - на вин - когда нагружена - происходит просадка трафика - грубо говоря пинги застопориваться - потом начинают идти - до нескольких секунд так
если запустить cpu стресс тест - то это отчетливо видно

на линуксах все нормально

далее - ping -f на них показывает что на вин постоянно наблюдается хоть и мелкая - но потеря трафика
тотже pinf -f на линуксы - точки стабильны - потерь нет

замена драйвера на e1000 на вин - потерь при ping -f нет - но изредка повышенный пинг все равно остаеться

qlen на tap интерфейсах на хостовой машине увеличивал - вроде лучше - но проблему не решило

 , ,

ae1234
()

route & ip route

root@s:/root# ip route add 10.1.1.1 via 127.0.0.1
root@s:/root# ip route add 10.1.1.1 via 127.0.0.2
RTNETLINK answers: File exists
root@s:/etc/openvpn# ip route list dev lo
10.1.1.1 via 127.0.0.1



все понятно

а тут

root@s:/root# route  add -host 10.1.1.1 gw 127.0.0.2
root@s:/root# route add -host 10.1.1.1 gw 127.0.0.3
root@s:/root# route add -host 10.1.1.1 gw 127.0.0.4
root@s:/root# ip route list dev lo
10.1.1.1 via 127.0.0.4 scope link
10.1.1.1 via 127.0.0.3 scope link
10.1.1.1 via 127.0.0.2 scope link
10.1.1.1 via 127.0.0.1

а с чего и почему ?
старый и новый интерфейc до роутинга работает по разному
в чем причина и зачем ?

 

ae1234
()

iptables ntf буг или фича

/sbin/iptables-nft -A FORWARD -s 0.0.0.128/0.0.0.128 -j DROP
iptables v1.8.7 (nf_tables): RULE_APPEND failed (Invalid argument): rule in chain FORWARD

/sbin/iptables-legacy -A FORWARD -s 0.0.0.128/0.0.0.128 -j DROP

wtf ?

 ,

ae1234
()

php и предопределенные массивы

я конечно понимаю что хочу странного - и это делаеться по другому
но

есть ли способ - не изменяя исходники пыха - заставить его на постоянную хранить мелкий массив/базу ?

чтоб без memcached без apcu и так далее - любой старт php - у него уже был в переменных какойто массив
(и чтоб его не надо было загружать с диска каждый раз и парсить)

грубо говоря есть несколько таблиц справочников - которые хотелось бы чтоб были просто всегда (не изменяемые)

 

ae1234
()

openvpn минимальное шифрование при tls-server

можно ли заставить openvpn поставить минимальное шифрование - отличное от tls установок openssl

вообще говоря нужна объединить в один tap несколько клиентов - с максимальной производительностью
возиться с несколькими туннелями - и объединять это все в бридж не очень хочется

 ,

ae1234
()

Постоянные зависание линукс-роутера - patch-fix

Ситуация что начали несколько месяцев назад зависать не с того ни с чего роутеры
железо меняли/биосы фирмвари упгрейдили/ядра меняли
ничего не помогало
причем когда началось - просто думали что - ну железо сдыхает бывает - а не тут то было

недели две назад наткнулся на
http://marc.info/?l=linux-netdev&m=149124211620174&w=2
http://forum.nag.ru/forum/index.php?showtopic=128432&st=0&p=1390404&a...

пока 2 недели работает нормально
у кого такие же - попробуйте-отпишитесь - точно ли в этом причина
этот патчь уже в ядре - но не в стабильных

проблема возникает если фаервол делает изменение MSS в проходящих пакетах

 ,

ae1234
()

double qos

Есть ли способ - не прибегая к нестандартным патчам ядра - заставить проходящий трафик через сервер - два раза попасть под 2 разных qos-а (htb) ?

стандартные htq,cbq,hfsc не позволяют сделать такой как надо qos

условия что (по определенным причинам) это можно делать только в исходящем в локальную сеть интерфейсе

например как идея - заставить трафик уходящий на сетевую внутрь сети - пройти какой то внутренний виртуальный интерфейс - на который как раз и можно было повесить второй qos
воспользоваться lxc или netns мешает то что не хочется терять метки от iptables-а на пакетах
есть ли способ сделать такой виртуальный интерфейс ? эксперименты с veth и lo как то не получились


сторонним патчем ядрам это решилось бы элементарно - IMQ и почти в любом месте через iptables пакет перенаправляется в imq интерфейс (предположительно)
а есть ли такая возможность стандартными средствами

 ,

ae1234
()

ext4 и 25 терабайт

имееться 25 терабайт массив (raid6 3тб диски 7200 sas6gb)

что хотим - разместить почту - текущий обьем 11 тб

что лучше сделать для проиводительности - так как там почти чистый рандом доступ к 11 тб

и вопросы
1) есть ли какието известные проблемы у ext4 с такими обьемами - то есть что лучше отдать все под одну ext4 - или нарезать обьем скажем по терабайту и на каждой сделать отдельную fs
2) про разбить этот обьем на два рейда и/или заодно поменять raid6 на raid10 и подобное - я и сам понимаю что это улучшит рандомный доступ - но разбить этот массив возможно только на 2

+ ...

?

 

ae1234
()

dhcp и тегированный и не тегированный интерфейс

Тема старая - но ненашел простого решения

есть eth2 - ина нем додполнительно eth2.3
dhcp запрос приходит в теге - tcpdump видно все нормально

но dhcp на сервере ловит этот пакет 2 раза - певый раз (сначала) на нетегированном
а второй раз в тегированном

и отвечает два раза - первый раз с нетегировапнного - и пакет уходит не тэгированный - но что странно этот ответ клиент ловит - что несколько странно

а второй раз - отвачает NAK - в тэгированном

есть ли способ это исправить нормально - без привлечение 82 и подобное

 ,

ae1234
()

Быстрая инсталяция линукса из под винды

может знает кто
есть ли способ/программа под винду - которая быстро бы установила линукс

то есть работала примерно так - запуск - программа лочит диск c: - заливает в его начало образ линуксовый гиг 10 - и тут же ребутит комп

и загружаеться уже линукс

ae1234
()

посоветуйте замену asus 500gpv2 rt-n16

Юзали изначально 500gpv2 с энтузистной прошивкой - их перестали выпускать
потом юзали rt-n16 с такойже прошивкой - но их опять перестают выпускать

в связи с этим нужно искать замену
ентузиаская прошивка неразвиваеться - freewrt новые асусы непонимает

у асусов - замена n16 - это rt-n18u
но насколько я понимаю - это уже на arm процессоре (прошлые были мипсы)
да и сам n18 2009-2010 года


Нужен новый (чтоб долго выпускался) wifi роутер - с возможностью пересборки прошивки

ae1234
()

linux md raid5

обьясните

по какой причине - на линуксовом рейд5 софтварном - при записи на партицию - идет чтение с нее
причем читает примерно 1/4-1/8 от того что записал

он что то проверяет ? иль это стандартное поведение raid5 - и я что то не понимаю в этих рейдах ?

dd if=/dev/zero of=/dev/md1 bs=1024k count=10000
10000+0 записей считано
10000+0 записей написано
 скопировано 10485760000 байт (10 GB), 27,1908 c, 386 MB/c

в это время iostat 5  показывает примерно это

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda            3872,80     28558,40    165674,40     142792     828372
sdc            3600,80     25789,60    172561,60     128948     862808
sdb            4207,40     28684,00    171516,00     143420     857580
md1           79516,20         0,00    318064,80          0    1590324
ae1234
()

squid + AD группы + простое решение

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

раньше юзал как обычно аунтификацию ntml + проверку по юзерах - входят ли они в определенную группу на AD
но это все шибко тяжеловесно - и не было необходимости в абсолютно жестком разграничении

сделал проще
на AD сделал раздачу настройки прокси всем на один порт
и тамже - определенной группе сделал раздачу прокси на другой порт

а на сквиде - разделил acl-ми - разрешение в зависимости от того на какой порт пришел запрос

в результате - тока у нужных юзеров стоит порт который порт с разрешением всего инета
у других - ограниченный порт прокси

мож баян - но простое и легкое решение

ae1234
()

буферизация OpenGL

glBufferDataARB(34962, 864, (nil), 35040)
glBufferDataARB(34963, 108, (nil), 35040)
glBufferSubDataARB(34962, (nil), 864, 0x103b6020)
glBufferSubDataARB(34963, (nil), 108, 0x7d48d38)
glBindTexture(3553, 13)
glEnable(2896)
glLightModelfv(2899, 0x32fa8c)
glViewport(0, 0, 1920, 1080)
glDepthRange(0.000000, 1.000000)
glVertexAttribPointerARB(0, 3, 5126, 1, 24, (nil))
glVertexAttribPointerARB(4, 4, 5121, 1, 24, 0xc)
glVertexAttribPointerARB(6, 2, 5126, 1, 24, 0x10)
glDrawRangeElementsEXT(4, 0, 35, 54, 5123, (nil))

примерный код

а вопрос вот в чем - как долго нужно хранить в памяти данные которые использовались в приведших командах opengl? если DrawElements рисует использую интдексы скажем из обычной памяти - то можно ли сразу после завершения команды эту память юзать для другого ?

ведь есть (была ?) буферизация opengl команд - которые выполняются не сразу - а через какое то время - иначе для чего в opengl команды glFlush и glFinish ? или я неправильно понимаю ?

вот в приведенном листинге задаются и загружаються из озу 2 буфера по 864 и 108 байта вот и вопрос как быстро можно изменять эту память - и где это оговаривается

ae1234
()

STP и линк его непропускающий

есть два типа езернет линка
особенность в том что один из линков пропускает stp пакеты тока в одном направлении
есть ли нормальное решение чтоб заставить stp функционировать ?
может как то изменять stp пакеты посредством tc - чтоб их пропускало ? мимикрировать их :)

ae1234
()

WoW Pandaria + rGL

http://aewi.info/rgl

обновил свой rGL до wow 5.0 + оформил отдельной либой
теперь перекомпиливать wine не надо
(продолжение с WoW wine rgl patch optimization )
http://aewi.info/rgl/rgl.so сама либа
http://aewi.info/rgl/rgl.tgz исходники

rgl - патч на wine для распараллеливание работы opengl подсистемы на два ядра (fps и всякое такое)
в текущей раелизации в виде бибилиотеки - может тоже самое делать и для нативных линукс программ - другое дело что невсе функции нормально переписаны иль без ошибок :) (даже glxgears умудряеться паралелить - правдо от этого тока минус)

Instruction:
wget http://aewi.info/rgl/rgl.so
cp rgl.so /usr/lib/
LD_PRELOAD=rgl.so wine Wow.exe -opengl

оттестировано тока на wow-е

ae1234
()

непонятность с классами

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

 , ,

ae1234
()

стиль обработки ошибок

func(){
    .....
    p1=malloc();
    .....
    if(check) goto RE_0;
    .....
    .....
    p2=malloc();
    .....
    if(check) goto RE_1;
    .....
    return true;
RE_1: free(p2);
RE_0: free(p1);
    retuen false;
    }

хороший ли это стиль для Си или нет ?

ae1234
()

трабла и решение с openvpn на мелких роутерах

проблема решена - решил написать - авось кто с такой же столкнется проблемой

есть кучка мелких роутеров asus500gpv2 - и центральный vpn - подключается по openvpn

изредка - роутеры которые стоят на определенных провайдерах - крайне хреново конектились к серверу
в логах и дампе это выглядит как будто клинет конектится - общается с сервером и внезапно сам клиент рвет сессию
и заново пытаеться

проблема была неособо острой - и бывало сама проходила
и я грешил скорее на самих провайдеров - думая что чтото в натах провайдера - мешает нормально работать сессии openvpn

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


суть в том - что у мелких роутеров нет встроенных часов - и время и дату - они на себе ставь тока когда подключаются в инет - через ntp
но если ntp по какойто причине не срабатывает - то время так и остается на роутера в 1970 году

и когда опенвпн конектиться - а конектиться то он по сертификату - он при общение с сервером и обьявляет что этот сертификат - неправильный - и думаю что дело плохо - рвет сессию и заново

p.s. если настраиваете на мелких роутерах openvpn с сертификатами - не забудьте прописать в стартовые скрипты - установку времени (через date -s) на какой то более менее вменяемую дату - чтоб даже при не работе ntp - сертификат приняли

 , ,

ae1234
()

omit-frame-pointer

пошлите куданить прочитать про это в gcc
он на новых версиях gcc включен по умолчанию в -O2 оптимизацию на 32 битах
и программка одна начинает падать от этого

что именно может не так оптимизироваться в программе с этим флагом - и как избежать этого ?

ae1234
()

RSS подписка на новые темы