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 ბაზები ვაკუუმი და REINDEX. გარკვეული დროის განმავლობაში მან rebradinranite Debian ვერსიები Mozilla პროდუქცია. Upon მიგრაციის Icedowe to Thunderbird ეგონა, მე არ defragment თქვენს მონაცემთა ბაზაში, და ჯერჯერობით ფოსტით კლიენტს I გავიდა სერიოზული თანხის წერილებს, ელ ანგარიშები და სერვერები, წევრებს და პაროლები. სკრიპტი იდენტურია, რომ ჩემი წინა პოსტი მხოლოდ მცირედი მოდიფიკაცია, სად უნდა ვეძებოთ ფაილი 🙂

Linux ვერსია

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 OS ვერსია

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 საკმაოდ სწორ გზაზე (без სივრცეში) და არა, რათა ცვლილება delimiter.

ერთი ჭკვიანი შეასრულა გააუმჯობესოს სიჩქარე firefox ბრაუზერის მოსწონს მტვერსასრუტები SQLite საფუძველზე მისი მონაცემები. VACUUM პროცესი წვეთები მონაცემთა ბაზაში, როგორც მისი ამგვარად ოპტიმიზაცია, შემცირდა ზომა და მოთხოვნის ხდის უფრო სწრაფად, დისკის გამოყენება უფრო ეფექტურად და შესაძლოა შემცირდა დატვირთვის თქვენს დისკზე როგორც წაკითხული თანმიმდევრობით სექტორში me. საერთოდ ეს ეხება ნებისმიერ მონაცემთა ბაზა, რომელიც ავტომატურად არ ვაკუუმი / defrag თავს.

პროცესი defragmenting ბაზაში Firefox საკმაოდ ტრივიალური – ასრულებს sqlite3 db-ფაილი VACUUM პროფილის დირექტორია firefox. In Linux გზაზე, როგორც წესი, ~ / .Mozilla / Firefox / შემთხვევითი name.default. ზოგადად, თქვენ უნდა მხოლოდ 1 თქვენი დირექტორია .Mozilla / firefox თუ თქვენ გაქვთ მეტი შეგიძლიათ ნახოთ ~ / .Mozilla / Firefox / profiles.ini სწორი დირექტორია პროფილი თქვენი ბრაუზერის. მას შემდეგ, რაც მე არ ჩართული ასრულებს პროცესი ხელით მოახერხა მარტივი სკრიპტი defragment მონაცემთა ბაზები:

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

მას შემდეგ, რაც შესრულებაში script მოთხოვნა ისტორიაში უბრალო ბრალდებით lisika საგრძნობლად სწრაფად. Script ვივარაუდოთ, რომ მცირე ცვლილებები შეიძლება იყოს გამოყენებული Mac OS.

p.s Ето варианта и за Mac OS X – ტესტირება Mac OS X Sierra. Delimitara აიძულოს ნებისმიერი ახალი იმისათვის ფართი გზა საქაღალდეში, რომელიც შეიცავს მომხმარებლის 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
  • Ping
  • ვინ არის

ყველაზე უსიამოვნო ის არის, რომ ტესტირება თავად უნდა იყოს უნიკალური, ანუ თქვენ არ შეგიძლიათ გამოიყენოთ დომენის ორჯერ 🙂 სხვა რამ ცოტა შემაშფოთებელი 🙄 – არ არის გამოწვევა მხოლოდ whipped 5 CLI-ბრძანებები და ასლი / პასტა შედეგი მათი საიტი.

როგორც ზარმაცი და ადმინისტრაციას, რომელიც უყვარს ხდის ცხოვრება ადვილი scribbled სწრაფი ერთი მარტივი 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

როგორც ჩანს სკრიპტი insanely მარტივი. წარუდგინოს domain მაშინ იგი ამტკიცებს თუ არა IPv6 მასალა და თუ კეთდება ყოველდღიურად ტესტები ეს. ყველაზე coolest ნაწილი – ფუნქცია სთ რომელიც ბეჭდავს ხაზის გასწვრივ სიგანე ეკრანზე აღებულია bash-ჰაკერები.

ერთ-ერთი რამ, რომ ყველაზე ვაწყენინო მე ბევრი არის, როდესაც კლიმატის კოპირება / გადაადგილება დიდი საიტები წარმოდგენა არ მაქვს, რა პროცენტული საერთო რაოდენობის მე შემოვიდა off. სამწუხაროდ cp / mv აქვს მსგავსი უფლებამოსილება და უნდა მიმართო ალტერნატივა. არსებობს უამრავი შესაძლებლობები, მაგრამ ჩემთვის პირადად, როგორც მომწონს გამოყენებით rsync ნაცვლად pc / mv. მას აქვს ყველაფერი აშენებული – შეკავება უფლება ფაილი და დირექტორიები, პროგრესის ბარი და უნარი წაშლა გადაწერა ფაილი.

ძირითადად მე მივიღე 2 alias-а които вършат повече от чудна работа:

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