DN42 е един прекрасен проект който ви дава възможност да развивате вашите BGP умения без да чупите продуктова среда, без да ви се налага да имате скъпи устройства с които да си правите лаборатория да си правите симулации с GNS3. Същевременно да не е чисто лабораторна среда при която няма проблеми от реалният свят. Участвам с 1 node в проекта от около година. Един от проблемите в проекта е 1:1 с реалният святкогато някой ти обяви префикси които не трябва да обявява. Понеже съм мързелив и не ми се пише на ръка филтри все път, реших проблема с елементарен bash скрипт които ми генерира prefix-list с име dn42 и в него наливам валидните префикси.

#!/bin/bash</pre>
vtysh -c 'conf t' -c "no ip prefix-list dn42"; #drop old prefix list

while read pl
do
vtysh -c 'conf t' -c "$pl"; #insert prefix list row by row
done < <(curl -s https://ca.dn42.us/reg/filter.txt | grep -e ^[0-9] | awk '{ print "ip prefix-list dn42 seq " $1 " " $2 " " $3 " ge " $4 " le " $5}' | sed "s_/\([0-9]\+\) ge \1_/\1_g;s_/\([0-9]\+\) le \1_/\1_g");
vtysh -c 'wr' #write new prefix list

Списъка с валидните предикси се взема https://ca.dn42.us/reg/filter.txt от където и основният конвейр + малко модификации от моя страна за да може да се генерира префикс листа. Командите се изпълняват през vtysh.

Mozilla Thunderbird

הרעיון הוא זהה בשני במעמדי Firefox מאגרי ואקום או יצירת אינדקס. מזה זמן בועט גרסאות דביאן rebradinranite של מוצרי Mozilla. עם המעבר מ Icedowe כדי Thunderbird חשבו, אני לא לאחות מסד הנתונים שלך, ועד כה באמצעות לקוח הדוא"ל עברתי כמות רצינית של אותיות, חשבונות דוא"ל ושרתים, משתמשים וסיסמאות. התסריט הוא זהה לזה של ההודעה הקודמת שלי עם שינויים קלים בלבד עבור איפה לחפש קבצים 🙂

גרסת לינוקס

for db in $(find ~/.thunderbird/$(grep Path ~/.thunderbird/profiles.ini | cut -d'=' -f2) -maxdepth 1 -name "*.sqlite" -type f)
do
echo "VACUUM ${db}"
sqlite3 ${db} VACUUM
sqlite3 ${db} REINDEX
done

גרסת מערכת ההפעלה Mac

for db in $(find ~/Library/Thunderbird/$(grep Path ~/Library/Thunderbird/profiles.ini | cut -d'=' -f2)  -maxdepth 1  -name "*.sqlite" -type f)
do
echo "VACUUM && REINDEX ${db}"
sqlite3 "${db}" VACUUM;
sqlite3 "${db}" REINDEX;
done

בניגוד תיקיית הפרופיל ב- Firefox של Thunderbird הוא די על המסלול הנכון (שטח без) ולא צורך לבצע שינוי מפריד.

אחת טריק חכם כדי לשפר את המהירות של דפדפן פיירפוקס כמו החללים SQLite מבוסס נתוניו. תהליך ואקום טיפות מסד נתונים כמו שלה ובכך לאחות, ירד גודל והביקוש עושה את זה מהר, שימוש בדיסק ביעילות רבה יותר ואולי ירד עומס על הדיסק שלך כמו לקרוא ברצף של מגזרים לי. בדרך כלל זה חל על כל מסד נתונים שאינו ואקום אוטומטי / Defrag עצמך.

התהליך ידי איחוי במאגר Firefox הוא די טריוויאלי – לבצע וואקום db-קובץ sqlite3 בספריית הפרופיל של פיירפוקס. בלינוקס הדרך זה בדרך כלל ~ / .mozilla / Firefox / אקראית name.default. באופן כללי, אתה צריך רק 1 בספרייה שלך .mozilla / פיירפוקס אם יש לך יותר אתה יכול לבדוק ~ / ​​.mozilla / Firefox / profiles.ini לספרייה הנכונה היא פרופיל של הדפדפן שלך. Тъй като не ми се занимава да извършвам процеса на ръка разписах елементарен скрипт с който да дефрагментирам базите данни:

for db in $(find ~/.mozilla/firefox/$(grep Path ~/.mozilla/firefox/profiles.ini | cut -d'=' -f2) -maxdepth 1 -name "*.sqlite" -type f)
do
   echo "VACUUM ${db}"
   sqlite3 ${db} VACUUM
   sqlite3 ${db} REINDEX
done

След изпълняване на скрипта търсенето в history-то и самото зареждане на лисика е чувствително по бързо. Скрипта предполагам че с малки модификации може да се ползва и в Mac OS.

p.s Ето варианта и за Mac OS Xтестван на Mac OS X Sierra. Налага се да форсираме делимитъра да е нов ред заради space в пътя до папката в която се съдържа профила на firefox

OIFS="$IFS"
IFS=$'\n'
for db in $(find ~/Library/Application\ Support/Firefox/$(grep Path ~/Library/Application\ Support/Firefox/profiles.ini | cut -d'=' -f2)  -maxdepth 1  -name "*.sqlite" -type f)
do
echo "VACUUM && REINDEX ${db}"
sqlite3 "${db}" VACUUM;
sqlite3 "${db}" REINDEX;
done

הסמכה ipv6.he.net יש בדיקות יומיות שנותנות 1 נקודה נוספת לאחר עבר את כל הבדיקות הגדולות. חייבת להתבצע 100 בדיקה כזו להשגת תוצאות 😐 . הבדיקות עצמן הן לגמרי טריוויאלי

  • traceroute
  • אתה AAAA
  • DIG PTR
  • פינג
  • מי זה

הכי לא נעימה היא כי בדיקות עצמו חייב להיות ייחודי, כלומר אתה לא יכול להשתמש בדומיין כפול 🙂 בין היתר הם קצת מעצבן 🙄 – אתגר לא פשוט מוקצף 5 CLI-פקוד בו ולהעתיק / להדביק את התוצאה באתר שלהם.

כפי עצלן מנהל שאוהב מקל על החיים שרבט bash-כך פשוט מהירה אחת לעשות את העבודה המלוכלכת בשבילי

#!/bin/bash

hr() {
  local start=$'\e(0' end=$'\e(B' line='qqqqqqqqqqqqqqqq'
  local cols=${COLUMNS:-$(tput cols)}
  while ((${#line} < cols)); do line+="$line"; done
  printf '%s%s%s\n' "$start" "${line:0:cols}" "$end"
}

if [ -z $1 ]
then
  echo "Append domain afert the script name!!!"
  exit
fi

IP=$(dig $1 AAAA +short)

if [ -z ${IP} ]
then
  echo "$1 dont have valid IPv6 record"
else
  reset
  traceroute6 $1
  hr
  dig $1 AAAA
  hr
  dig -x ${IP}
  hr
  ping6 -c3 ${IP}
  hr 
  whois ${IP}
fi

כפי שניתן לראות את התסריט הוא בטירוף פשוט. שלח מושלם אז זה מאמת אם ערכי IPv6 ואם נעשה בדיקות יומיות עבורו. רוב החלק הכי מגניב – פונקציה hr אשר מדפיסה קו לרוחב המסך נלקח bash-האקרים.

אחד הדברים שהכי מעצבנים אותי הרבה הוא כאשר CLI להעתיק / להעביר ספריות גדולות אין לי מושג מה אחוז מהסכום הכולל ירדתי מעליה. למרבה הצער cp / יש MV כוחות דומים צריך לפנות לחלופות. ישנם הרבה הזדמנויות אבל לי באופן אישי כמו שאני אוהב להשתמש rsync במקום PC / MV. היא בנתה הכל – שמירה של זכויות על קבצים וספריות, סרגל התקדמות ואת היכולת למחוק את הקבצים המועתקים.

בעיקרון עשיתי 2 alias-а които вършат повече от чудна работа:

alias cpi='rsync -a --info=progress2'
alias mvi='rsync -a --info=progress2 --remove-source-files'