16
|
BSD секция / Системни настройки / Предотвратяване на layer 2 loop
|
-: Apr 16, 2008, 22:38
|
Хахахах... на мен ми е ясно, че трябва да си рядко тъп за да го направиш... но понякога се прави от невнимание или недоглеждане... имам колеги, които бачкат за големи ISP-та и какви ли не работи са ми разказвали... но не е там цялата работа... работата е да си подготвен за всичко, без значение дали е възможно или не...
|
|
|
18
|
BSD секция / Системни настройки / Предотвратяване на layer 2 loop
|
-: Apr 16, 2008, 12:32
|
Добре, а как да си сваля интерфейса, като системата е зависнала... мога само ръчно като измъкна кабела... '> ... това не ме устройва... или пък да го направя автоматично да го сваля при достигане на някакъв лимит, ама там е въпроса, че не знам как... ако са прекъсвания както ти казваш, какво трябва да следя... cputime? ...
|
|
|
19
|
BSD секция / Системни настройки / Предотвратяване на layer 2 loop
|
-: Apr 16, 2008, 08:33
|
И аз имам подобни наблюдения върху него, при мрежово натоварване много ми забива... и преди експеримента с лууп-а... но все пак не може да няма нещо, с което да го ограничавам, така че вместо да забива, да отрязва самите заявки... кофтито е, че не знам защо забива, РАМ-а ли му свършва, процесора ли... но в момента в който разкача луупнатите портове всичко си идва на мястото... ако по време на луупа съм писал в шела ( той не отговаря естествено ), след прекратяване на луууп-а изведнъж шела ми изплюва всичко написано... тоест системата не е тотално забила, ами е зависнала само... тоест с правилни ограничения според мен може да се постигне резултат... само че не знам с какъв инструмента да ги направя... п.с. и 2-та клиента за суича са на Хр, не лоши пс-та, но и 2-та зациклят в лууп-а ... '>
|
|
|
20
|
BSD секция / Системни настройки / Предотвратяване на layer 2 loop
|
-: Apr 15, 2008, 21:29
|
Значи тази вечер си направих малък експеримент... мрежате е следната, рутер с OpenBSD, след него суич и към суича 2 клиента... давам loop на 2 от портовете на суича и цялата мрежа умира... но ми умира и bsd-то... как мога да предотвратя подобно нещо, някак си да огранича този флууд от арп заявки да не влияе на интерфейса на bsd-то...
|
|
|
22
|
BSD секция / Системни настройки / Малко за env и root
|
-: Feb 12, 2008, 20:28
|
Да, с OpenBSD съм, /usr/local/sbin го има в /root/.kshrc ... и пак не става... а това със средата го разбрах... всъщност било нормално при su root да наследява env от предния потребител, за чист root трябва "su -" ... след "su -" вече си имам /usr/local/sbin в $PATH, но въпроса остава защо го нямам след "su" само, след като в env на invisible го има?
|
|
|
23
|
BSD секция / Системни настройки / Малко за env и root
|
-: Feb 11, 2008, 22:39
|
Имам въпрос: това ми е env при редовен потребител Примерен код | PATH=/home/invisible/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin:/usr/games:. HISTFILE=/home/invisible/.history SHELL=/bin/ksh USER=invisible MAIL=/var/mail/invisible HOME=/home/invisible ENV=/home/invisible/.kshrc LOGNAME=invisible
|
а това след su
Примерен код | PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin:/usr/local/bin HISTFILE=/home/invisible/.history SHELL=/bin/ksh USER=root MAIL=/var/mail/invisible HOME=/root ENV=/home/invisible/.kshrc LOGNAME=invisible
|
Защо повечето неща при env за root сочат към invisible ( редовният ми потребител ) и защо при root в PATH липсва /usr/local/sbin ?
|
|
|
24
|
Програмиране / Общ форум / Помощ за скрипт
|
-: Feb 08, 2008, 21:43
|
Доста съм зле все още с тази материя... и ти ме разби... в момента се опитвам да разбера всяко едно нещо от твоите предложения какво прави всъщност и донякъде успявам... '> Можеш ли да ми препоръчаш някакво четиво... но наистина подробно и цялостно... виждам, че си на ти с скриптовете... '> btw версиятата ти работи и то ужасно бързо... '>
|
|
|
25
|
Програмиране / Общ форум / Помощ за скрипт
|
-: Feb 06, 2008, 16:42
|
Да, прав си, но аз по принцип обичам всичко да е максимало оптимизирано и правилно написано. Твоят вариант стана така: Примерен код | umask 022
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
cd /etc if [ -e ip-access-src.txt ]; then rm -f ip-access-src.txt; fi if [ -e bgpeering ]; then rm -f bgpeering; fi wget http://www.nat.bg/look/AS/ip-access-src.txt && cat ip-access-src.txt | grep permit | cut -f5,6 -d" " > unconverted while read line do ip=$( echo $line | awk '{print $1}') mask=$( echo $line | awk '{print $2}') mask=`calcmask wildcard $mask | grep CIDR | awk '{print $3}'` echo "$ip/$mask" >> bgpeering done < unconverted
|
което е доста по-малко код и по-добре написано... въпреки, че не се постига бързодействие на скрипта ( и в този вариант отнема около 40-50 сек за конвертиране на всичките над 500 мрежи ). Засега това е актуалната версия на скрипта '>
|
|
|
26
|
Програмиране / Общ форум / Помощ за скрипт
|
-: Feb 06, 2008, 10:14
|
Нещо не мога да го направя с while read line... мисля, че ми интерпретира целия файл като 1 ред... понеже използвайки това Примерен код | while read line; do ip=`awk '{print $1}'` mask=`awk '{print $2}'` echo "$ip/$mask\n" >> bgpeering done < unconverted
|
изхода ми е
Примерен код | 123.132.123.0 123.132.133.0 .... .... 123.233.132.0/\n <- това е последният ред
|
тоест маската изобщо не я хваща... A пък при
Примерен код | while read line; do ip=`awk '{print $1}'` echo $ip > ip done < unconverted |
файлът ip съдържа всички ip-та, като 1 ред...
Иначе това ми е финалната версия на скрипта... засега...
Примерен код | umask 022
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
cd /etc i="1" if [ -e ip-access-src.txt ]; then rm -f ip-access-src.txt; fi if [ -e bgpeering ]; then rm -f bgpeering; fi wget http://www.nat.bg/look/AS/ip-access-src.txt && cat ip-access-src.txt | grep permit | cut -f5,6 -d" " > unconverted lines=$(cat unconverted | wc -l) i=1 while (( i <= $lines )) do head -n$i unconverted | tail -n1 > temp_convert ip=$( cat temp_convert | awk '{print $1}') mask=$( cat temp_convert | awk '{print $2}') mask=`calcmask wildcard $mask | grep CIDR | awk '{print $3}'` echo "$ip/$mask" >> bgpeering let i=i+1 done
|
|
|
|
27
|
Програмиране / Общ форум / Помощ за скрипт
|
-: Jan 29, 2008, 19:17
|
Примерен код | #!/bin/bash wget http://www.nat.bg/look/AS/ip-access-src.txt && cat ip-access-src.txt | grep permit > temp && cat temp | cut -f5,6 -d" " > unconverted && cat unconverted | wc -l > line_cnt lines=$(cat line_cnt) i=1 while (( i <= $lines )) do head -n$i unconverted | tail -n1 > temp_convert ip=$( cat temp_convert | awk '{print $1}') mask=$( cat temp_convert | awk '{print $2}') mask=`calcmask wildcard $mask | grep CIDR | awk '{print $3}'` echo "$ip/$mask" >> bgpeering let i=i+1 done rm ip-access-src.txt temp unconverted line_cnt temp_convert cp bgpeering /etc/ && pfctl -f /etc/pf.conf |
Аз стигнах до това. Сигурно може да се оптимизира, затова предлагайте '>
|
|
|
29
|
Програмиране / Общ форум / Помощ за скрипт
|
-: Jan 28, 2008, 23:09
|
Мерси много. Работи перфектно. Мисля да се помъча сам за останалата част, набарах една книга и ще я прочета цялата, специално за шел скриптинга... после ще постна крайният ми скрипт... '>
|
|
|
30
|
Програмиране / Общ форум / Помощ за скрипт
|
-: Jan 28, 2008, 10:51
|
Добър ден. Идеята е следната. Имам списък с мрежи, но в cisco формат, тоест с обратна маска ( пример 0.0.31.255 ). Искам да го преобразувам автоматично в списък с нормална CIDR маска, ( пример /19 ). Намерих инструмента calcmask, който прави следното: Примерен код | #calcmask wildcard 0.0.31.255 CIDR mask: 19 Netmask: 255.255.224.0 Cisco wildcard: 0.0.31.255
|
Така, до тук добре, но следва трудна част за мен.
от следният ред
Примерен код | 77.45.45.45 0.0.31.255 |
аз трябва да получа
Примерен код | 77.45.45.45/19 |
за да може pf да го разпознае... и това трябва да става автоматично чрез скрипт... и то за всеки един ред от списъка... явно ще има цикъл, който обхожда всеки ред... и замества обратната маска с CIDR, като я взима от изхода на програмата... Идеи?
|
|
|
Страници: 1 [2] 3 4 ... 15
|
|