DN42 is 'n wonderlike projek wat jou die geleentheid bied om jou BGP-vaardighede te ontwikkel sonder om die produk omgewing te breek, Sonder om duur toestelle te hê waarmee 'n laboratorium te maak om simulasies te doen met GNS3. Op dieselfde tyd, nie 'n suiwer laboratorium omgewing waar daar is geen probleme uit die werklike wêreld. Ek deel te neem met 1 Node in die projek van sowat 'n jaar. Een van die probleme in die projek is 1:1 Met die werklike wêreld – Wanneer iemand jou die prefikse verklaar wat jy nie moet aankondig. Want ek is lui en ek skryf nie op hand filters ooit manier, Ek het die probleem opgelos met 'n rudimentêre bash Script wat 'n voorvoegsel-lys met die naam dn42 genereer en ek gooi die geldige prefikse.

#!/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

Die lys geldige predicxes word HTTPS geneem://ca.dn42.us/reg/filter.txt van waar die belangrikste vervoerband + Klein veranderinge aan my kant in staat wees om voorvoegsel velle te genereer. Opdragte loop deur Vtysh.

Soos u weet CentOS 5 Is EOL (Einde van die lewe) van 31 Maart 2017. Wat lei tot die volgende baie interessante probleem:

# yum update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
&nbsp;Eg. Invalid release/
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
&nbsp;Eg. Invalid release/
removing mirrorlist with no valid mirrors: /var/cache/yum/extras/mirrorlist.txt
Error: Cannot find a valid baseurl for repo: extras

 

Die probleem is dat die spieëllyste op CentOS is 5 hulle is reeds verlore en as ons die inhoud direk wil neem, kry ons die volgende weiering:

# curl 'http://mirrorlist.centos.org/?release=5&arch=i386&repo=os'
Invalid release

 

In die algemeen is die sinvolste idee om die blikkie weer te installeer met 'n normale verspreiding wat die opdatering van werkverspreiding ondersteun.. Ongelukkig is dit nie die geval met my nie, en dit is glad nie 'n opsie op die tafel nie. Ons moes dus 'n bietjie van 'n sigeunerskema speel – започваме да използваме Vault огледалото. В момент на напълно ясно създание и здрав разум знам, че няма да получа каквито и да било ъпдейти което не е цел на упражнението, а искаме просто да има работещ yum с който да инсталирам пакет който ми е необходим. За целта закоментираме всички mirrorlist променливи и добавяме baseurl в /etc/yum.repos.d/CentOS-Base.repo. Накрая получаваме yum repo от вида на

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://vault.centos.org/5.11/os/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://vault.centos.org/5.11/updates/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://vault.centos.org/5.11/extras/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

Накрая играем едно yum clean all && yum update. As alles sonder foute eindig, dan is ons die skema suksesvol voltooi en dan kan ons die verouderde pakkette veilig installeer.

 

Mozilla Dondervoël

Die idee is identies aan my pos Firefox databasisse VAKUUM en HERINDEKS. Debian het die gerekende weergawes van Mozilla-produkte vir 'n geruime tyd verloor. Toe ek van Icedowe na Thunderbird migreer, het ek daaraan gedink, dat ek nie my databasis defragmenteer het nie, en tot dusver het 'n ernstige hoeveelheid briewe deur my e-poskliënt gelek, e-posrekeninge en bedieners, gebruikers en wagwoorde. Die skrif is identies aan die van my vorige boodskap net met 'n effense aanpassing vir waar om na die lêers te soek 🙂

Linux weergawe

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 weergawe

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

Anders as Firefox se profielmap, is Thunderbird op 'n goeie manier (sonder ruimte) en geen verandering aan die afbakenaar is nodig nie.

Sedert google begin hou van https-webwerwe, waar moontlik is daar meer massa-installasie van SSL's nodig. In die algemeen, benewens meer teistering vir bedieners, het ons ook 'n agteruitgang in spoed. Dis goed, daardie HTTP2 die standaard is al meer as 'n half jaar by alle belangrike http-bedieners en blaaiers geïntegreer en die ondersteuning daarvan is stabiel genoeg. Ongelukkig het debian stabiel nie pakkette wat HTTP2 ondersteun in die belangrikste http-bedieners nie. Die weergawes wat HTTP2 benodig, is soos volg:

Vir my is die mengsel groot en hang dit af van apache of nginx. Ek het nog nie gespeel met debian se apache http2 nie 8 soos ek nie hoef nie, maar in backports is die repo so, dit sal nie 'n groot saak wees nie. Vir nginx het dit al 'n paar keer gespeel. Oor die algemeen is die stappe verskeie en relatief eenvoudig:

  1. Ons voeg die nginx-amptelike repo by – in debian is die weergawe 1.6.x 🙄
  2. Die installering van openssl vanaf backports is tans 1.0.2k – dit is waarvoor ons nodig het ALPN onderhoud sodat alles kan werk en vinnig kan wees
  3. ons installeer ons skripsies – hier is die oomblik om te deel dat ons ons pakket sal bou, want die amptelike pakket is saamgestel met openssl 1.0.1t waar ALPN nie werk nie en die blaaiers nie goed reageer nie en die http2 slegs werk as u dit forseer
  4. ons verhoog die weergawe om nie die sigeuners met die pakkies te hou nie en as daar 'n nuwe weergawe is om slegs bronne te sinkroniseer

Laat ons stap vir stap begin

Voeg nginx repo by

deb http://nginx.org/packages/debian/ codename nginx
deb-src http://nginx.org/packages/debian/ codename nginx

Deur openssl 1.0.2k en die dev-biblioteek by te voeg, anders bou ons dit weer met 1.0.1t, wat nie ons doel is nie

echo 'deb http://ftp.debian.org/debian jessie-backports main' | tee /etc/apt/sources.list.d/backports.list

apt update && apt install libssl-dev -t jessie-backports

 

Dit bly nou by om die biblioteke by te voeg wat nodig is om nginx saam te stel

apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

As u korrek gewerk het, moet u 'n struktuur hê soos

~/nginx-build # ll
total 1004
drwxr-xr-x 10 root root   4096 Feb 21 18:37 nginx-1.10.3
-rw-r--r--  1 root root 103508 Jan 31 17:59 nginx_1.10.3-1~jessie.debian.tar.xz
-rw-r--r--  1 root root   1495 Jan 31 17:59 nginx_1.10.3-1~jessie.dsc
-rw-r--r--  1 root root 911509 Jan 31 17:59 nginx_1.10.3.orig.tar.gz

Влизате в папта в която е разархивиран сорса на nginx в моят случай е и nginx-1.10.3 изпълнявате команда с която инкрементирате версията, Ek persoonlik verkies om by te voeg 1 tot die huidige gebou

debchange --newversion 1.10.3-1

Nadat u die veranderlike lys van u keuse bygevoeg het, kan u voortgaan met die werklike samestelling

debuild -us -uc -i -I -b -j6

'N Klein uiteensetting van die opdragkonfigurasie:

-ons -uc vertel die skrif om nie “tekens” .dsc en .changes lêers. -i en -Ek veroorsaak dat die skrif weergawelêers ignoreer. -B om slegs 'n binêre pakket te genereer. -j soos met hoeveel parallelle prosesse to saamgestel moet word

 

Sodra bogenoemde proses voltooi is, moet ons ons nuwe pakkette installeer. As u reeds nginx geïnstalleer het, is dit 'n goeie idee om dit te verwyder

apt remove nginx nginx-*

Dit is ook 'n goeie idee om die nginx-lêergids in / ens te rugsteun. Basies by die opgradering van 1.6.5 om 1.10.3 Ek het geen dramas gehad nie, maar jy weet nooit. Die nuwe pakkette is in die boonste vouer geleë en moet geïnstalleer word met 'n opdrag soos:

dpkg -i ../*.deb

As alles glad verloop, hoef u net die nginx-proses uit te voer en http2 op te stel, wat nie meer die doel van hierdie artikel is nie..

'N slim truuk om jou blaaier se spoed te verbeter, is deur vaqing sy sqlite-databasis. Vakuum proses herbou die databasis, en daardeur defragmenteer, verminder die grootte en maak sy vraag vinniger, skyfgebruik kan ook die las op jou skyf effektief verminder, aangesien dit in 'n volgorde van my sektore lees. Oor die algemeen is dit van toepassing op enige databasis wat nie outomaties vakuum/Defrag op sigself uitvoer nie.

Die Firefox databasis defragmentasieproses self is redelik nietig – Vervul sqlite3 DB-lêer VAKUUM in die Firefox-profielgids. In die Linux pad na dit is gewoonlik ~/.Mozilla/Firefox/random-name.default. In die algemeen, moet jy net 1 dirketoria in. Mozilla/Firefox as jy meer kan jy kyk ~/.Mozilla/Firefox/profiles.ini vir die korrekte gids in is die profiel van jou browser. Aangesien ek nie gepla is om die proses met die hand uit te voer nie, het ek 'n eenvoudige Script geskryf om die databasisse te defragmenteer.:

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

Na die uitvoer van die Script, die soektog in die geskiedenis en die Fox laai self is sensitief vinniger. Die Script ek raai met klein veranderinge kan ook gebruik word in Mac OS.

p. s hier is die opsie vir Mac OS X – getoets op Mac OS X Sierra. Ons moet die delimiter dwing om 'n nuwe orde te wees as gevolg van ruimte in die pad na die gids wat die Firefox profiel bevat

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