AlexJ's Computer Science Journal

alexandru.juncu.ro

The season of IPv6

Săptămânile acestea subiectul IPv6 este foarte discutat, în general datorită veștii că zilele ce urmează, IANA va aloca ultimele adrese IPv4 disponbilie.Chiar și dimineață am citit în newsletter-ul Slashdot de știrea ultimelor zile de IPv4 [1].

Deși de 10 ani se tot discută că trecem la IPv6, nu prea pare să se întâmple pentru că, încă “merge’așa”. Câteodată, mai există inițiative de a promova trecerea la IPv6 cum ar fi World IPv6 Day [2], care este un plan al unor companii mai mari (Google, Yahoo, Facebook) să pună la dispoziție site-urile lor peste IPv6.

Mai aproape de casă, cu ocazia Întâlnirii RLUG (Romanian Linux Users Group) din Ianuarie [3], s-a discutat despre IPv6, ce merge și nu merge într-o prezentare (la care, din păcate, nu am participat). Cei doi ce au ținut prezentarea, rpetre [4] și Cioby de la RLUG, au plusat pe subiect și, în acest weekend, au organizat Atelierul RLUG pe luna Ianuarie [5] pe tema IPv6. Atelierul a avut loc ieri, în laboratorul Ixia din UPB și la acesta am apucat să particip și eu.  A fost interesant, pentru că am discutat despre diverse probleme și soluții legate de IPv6 și am și configurat stațiile din laborator cu acces IPv6 la Internet.

Geek-ul din mine tot tresare când se mai vorbește despre IPv6, așa că a fost interesant Atelierul. Și, deși sunt conștient că va mai dura până vom trece la noul protocol, mi se pare important ca măcar persoanele tehnice să experimenteze cu el.

Prins și eu în febra momentului, azinoapte am stat să reconfigurez tunnelul de la Hurricane Electric [6] prin care aveam și eu o clasă IPv6 rutată pe un server (server care nu mai exista și acum am mutat tunelul pe înlocuitorul său).

[1] http://tech.slashdot.org/firehose.pl?op=view&type=story&sid=11/01/22/057227

[2] http://tech.slashdot.org/story/11/01/12/1549246/Major-Sites-To-Join-lsquoWorld-IPv6-Dayrsquo

[3] http://wiki.lug.ro/%C3%8Ent%C3%A2lnirea_RLUG_Ianuarie_%2711

[4] http://blog.technostoic.net/2011/01/18/rlug-si-ipv6/

[5] http://wiki.lug.ro/Atelier_ianuarie_2011

[6] http://tunnelbroker.net/

ACS Winter Skating is back!

Cu ocazia apropierii vacanței și a sarbatorilor de iarnă, Facultatea de
Automatică și Calculatoare are plăcerea să invite studenții la patinoar [2],
în cadrul evenimentul ACS Winter Skating [1].

Programul evenimentului este:
* Miercuri 15 dec ora 17- Anul 1
* Marți 14 dec ora 20 – Anul 2
* Luni 13 dec ora 17 – Anul 3
* Miercuri 15 dec ora 20 – Anul 4
* Luni 13 dec ora 20 – Master anii 1 și 2

Joi, 16 dec ora 20, anul care a adunat cei mai mulți studenți pe
patinoari, va primi o a doua ieșire, gratuită!

Pentru înscriere, va trebui să achitați sumă de 10 RON responsabilului
de serie [3]. Cei care nu dețin patine, le vor putea închiria de la
patinoar în schimbul sumei de 10 RON. Responsabilul va completa numele
participanților la una din paginile de la [3].

Cine dorește să ajute la promovarea evenimentului, poate folosi resursele [4] sau [5].

Pentru mai multe detalii, consultați wiki-ul[1].

Vă așteptăm,
Facultatea de Automatică și Calculatoare

[1] http://patinoar.cs.pub.ro
[2] http://www.patinoaronline.ro
[3] http://patinoar.cs.pub.ro/wiki/home/responsabili
[4] http://patinoar.cs.pub.ro/wiki/promovare
[5] http://www.facebook.com/event.php?eid=165326000171766

Un an de întâlniri RLUG/Prolinux

Există în lume multe LUG-uri, adică Linux User Groups, comunități de oameni care folosesc și promovează Linux. România nu este mai prejos și are și ea o comunitate puternică și destul de veche, RLUG [1]. Unii sunt administratori de sisteme, alții dezvoltatori, angajați la firme mari și mici din IT sau pur și simplu fani Linux pentru acasă, toți sunt pasionați de ce înseamnă Linux. Majoritatea sunt membrii ai altor comunități Open Source din România (cum sunt Fedora România sau Ceata).

Comunitatea se învârte foarte mult în jurul listelor de discuții RLUG. Listele principate sunt destul de tehnice și susținute de oameni care investesc mult timp încercând să îi ajute pe ceilalți contribuind cu lucrurile pe care ei le cunosc despre administrarea sistemelor Linux. De asemenea sunt găsiți și pe IRC.

RLUG pune la dispoziție serverele HTTP/FTP lug.ro, care sunt mirror-uri în România pentru distribuțiile importante de Linux și repository-uri pentru pachete.

Recent, acum aproape un an, în jurul acestei comunități cu tradiție s-a înființat Asociația Prolinux [2]. După cum spune în Statutul Asociației, “Scopul înființării Asociației ProLinux este promovarea și sprijinirea utilizării programelor de calculator cu surse deschise (engl. open source) în rândul utilizatorilor instituționali, industriali și privați din România.”

Din noiembrie 2009, RLUG prin intermediul Prolinux organizează o serie de Întâlniri lunare RLUG [3], în fiecare a doua joi într-un loc business numit Bucharest Hubb [4]. În cadrul acestor întâlniri se țin prezentări despre programe Linux după care se iese la bere pentru socializare. Aseară a avut loc ce-a de-a 13-lea astfel de întâlnire și, cu această ocazie, s-a aniversat un an de întâlniri RLUG/Prolinux. La multe întâlniri!

Mai recent, comunitatea organizează și o serie de Ateliere [5] în care oamenii să vină cu laptopurile și să lucreze pe viu pentru a învăța lucruri noi în Linux. Atelierele vin în completarea întâlnirilor pentru a oferi o parte mai practică. Se intenționează mutarea acestor întâlniri în Politehnică pentru a atrage studenții spre ele și spre linux.

[1] http://lug.ro/

[2] http://prolinux.ro/

[3] http://wiki.lug.ro/Categorie:%C3%8Ent%C3%A2lnirile_RLUG

[4] http://bucharesthubb.com/

[5] http://wiki.lug.ro/Categorie:Atelierele_RLUG

[CCIELab] Frame Relay Switching

[Originally posted on ccielab.ro]

Frame Relay is still very much a popular subject in exams, labs and in the real networks.

Any lab with topologies that run different protocols over FR must start with the layer 2 configuration of the Frame Relay switched network. FR Topologies like full mesh or hub and spoke require a Frame Relay Switch. A FR Switch is a normal router but specifically configured to do Frame Relay switching.

First of all, we need to tell the router to start switching Frame Relay traffic. From global configuration mode we need to issue the frame-relay switching command.

Then, on the interfaces to Frame Relay clients, we need to start sending keepalives (LMIs) by configuring the interface as DCE with the frame-relay intf-type dce command.

The last thing that the FR Switch needs to do is to route DLCI on the virtual cicuits. This is done to tell an interface where to put a received frame with a DLCI. The frame will be put on another interface with another DLCI. The configuration is done per interface with the frame-relay route command. The command requires that you specify the incoming DLCI, on which the switching decision will be maide, the outgoing interface, and the DLCI with which the frame will be sent (“freame-relay route IN_DLCI OUT_INT OUT_DLCI”).

If Inverse ARP is not disabled on the FR Switch, no DLCI-IP mappings will be required.

Topology:

fr_sw

Configuration:

R1(config)#int s0/0
R1(config-if)#no shut
R1(config-if)#encapsulation frame-relay
R1(config-if)#clock rate 128000
R1(config-if)#ip address 10.1.2.1 255.255.255.0

R2(config)#int s0/0
R2(config-if)#no shut
R2(config-if)#encapsulation frame-relay
R2(config-if)#clock rate 128000
R2(config-if)#ip address 10.1.2.2 255.255.255.0

FR-Sw(config)#frame-relay switching
FR-Sw(config)#int s0/1
FR-Sw(config-if)#no shut
FR-Sw(config-if)#clock rate 128000
FR-Sw(config-if)#encapsulation frame-relay
FR-Sw(config-if)#frame-relay intf-type dce
FR-Sw(config-if)#frame-relay route 102 interface s0/0 201
FR-Sw(config-if)#int s0/0
FR-Sw(config-if)#no shut
FR-Sw(config-if)#clock rate 128000
FR-Sw(config-if)#encapsulation frame-relay
FR-Sw(config-if)#frame-relay intf-type dce
FR-Sw(config-if)#frame-relay route 201 interface s0/1 102


Running Configurations:

R1:

interface Serial0/0
ip address 10.1.2.1 255.255.255.0
encapsulation frame-relay
clockrate 128000
no fair-queue
end

R2:

interface Serial0/0
ip address 10.1.2.2 255.255.255.0
encapsulation frame-relay
clockrate 128000
no fair-queue
end

FR-Sw:

interface Serial0/0
no ip address
encapsulation frame-relay
no fair-queue
frame-relay intf-type dce
frame-relay route 201 interface Serial0/1 102
end

interface Serial0/1
no ip address
encapsulation frame-relay
frame-relay intf-type dce
frame-relay route 102 interface Serial0/0 201
end

[CCIELab] Back-to-back Frame Relay

[Originally posted on ccielab.ro]

This is the simplest use of a Frame Relay encapsulation and it’s between two routers, without a Frame Relay Switch. PPP or HDLC would make more sense to use in these types of links, but it is useful in labs.

In a back-to-back scenario is important to remember what the FR Switch should be doing: being the DCE and sending the keepalives to maintain the layer 2 link to the client router. Because of the fact that no FR Switch is present, the lack of keepalives being sent must be ignored using the “no keepalive” command. Also, Inverse ARP won’t work, so manual IP-DLCI mapping will be needed.

The FR Switch should be the one doing swapping of DLCIs on the network so the frames arrive at their destination with the correctly mapped DLCIs. In this case, we will need to have the same DLCI set in the manual mapping so the routers match entries in the mappings.

The topology:

fr_b2b

Configuration:

R1(config)#int s0/1
R1(config-if)#no shut
R1(config-if)#clock rate 128000
R1(config-if)#ip address 10.1.2.1 255.255.255.0
R1(config-if)#encapsulation frame-relay
R1(config-if)#frame-relay map ip 10.1.2.2 42
R1(config-if)#no keepalive

R2(config)#int s0/1
R2(config-if)#no shut
R2(config-if)#clock rate 128000
R2(config-if)#ip address 10.1.2.2 255.255.255.0
R2(config-if)#encapsulation frame-relay
R2(config-if)#frame-relay map ip 10.1.2.1 42
R2(config-if)#no keepalive

Running configurations:

R1:

interface Serial0/1
ip address 10.1.2.1 255.255.255.0
encapsulation frame-relay
no keepalive
clockrate 128000
frame-relay map ip 10.1.2.2 42
end

R2:

interface Serial0/1
ip address 10.1.2.2 255.255.255.0
encapsulation frame-relay
no keepalive
frame-relay map ip 10.1.2.1 42
end

[CCIELab] Output manipulation in Cisco IOS

[Originally posted on ccielab.ro]

One of the things that make Command Line Interfaces, like Bash, very efficient for administration is the output manipulation with piping and redirecting. Cisco IOS has most of the Bash equivalent modifiers, and administrators that know how to work with them can do things much more faster… this can make the difference in a lab exam or in the real world. Most show commands support this features and depending on the IOS, you have more or less features.

The usual “show run” command prints a large output, from which you need only a few lines. You can only scroll down with space and enter (the the Linux more command). If you are searching for a keyword in the running config, you can go to the line that contains the string using the slash key, like in vim or more or less in Linux. So, “/KEYWORD” after running the show command, while scrolling, will take you to the wanted line.

If you want from the output just some lines, you can filter them, just like piping the output to grep in Linux. You can use the ” | ” after the show command to see how you can filter (be careful, there is a space before and after the |). To print just the lines that have a keywork, use “ | include KEYWORD“, and to print all lines except the ones what have the keyword, use “ | exclude KEYWORD“. If you want to print out all output starting with a line that contains a keyword until the end of the lines, use “ | begin KEYWORD“.

Taking advantage of the hierarchical structure of the running config, you can print out just a section of the output. For example, “show run | section   router ospf 1” will list the configuration for the OSPF process 1 and “show run | section interface Serial0/0” will print the configuration for the specified interface. Be careful, this is case sensitive and you need to mach the case of the line in the running config (“Serial 0/0” will work, “serial 0/0” won’t).

Redirection into a file is also possible. “show run | redirect flash:run” will put the contents of the running config into a file called ‘run’ in flash memory. This is similar to the “>” operand in Bash. Using redirect, the content of the target file will be replaced. You can append to the file (like “>>” in Bash) with “ | append FILE“.  “ | tee FILE” works like redirect, but it also prints the output to the screen.

Regular expressions are also supported. If you like to print from the routing table, the routes received from RIP, you can filter with “show ip route | include R” and the routes from EIGRP with  “show ip route | include D”. But you can do this in one line, filtering with both conditions, with “show ip route | include [RD]”.

Slightly off topic, but good to know, is how to stop output. For example, traceroute to an unreachable location, will try 30 hops before it stops, and this might take a long time. To break the action hit the key combination “Ctrl+Shift+6“.

Cisco Certified Network Professional

CCNP este certificarea de nivel avansat de la Cisco pe ramura de Routing and Switching. Este, de obicei, văzută ca o continuare pentru CCNA și un pas intermediar pentru CCIE, deoarece, majoritatea se orientează spre R&S.

În prezent, cerificarea de CCNP se obține după trecerea a 4 examene: BSCI, BCMSN, ISCW și ONT. BSCI este examenul de routare (o continuare pentru CCNA2) iar BCMSN cel de switching (continuare la CCNA3). ISCW are multe elemente de securitate, fiind mai plăcut pentru cei ce vor să își dea CCSP-ul, pe când ONT este orientat spre QoS, cu elemente de VoIP și mai plăcut pentru cei ce se orientează spre CCVP.

Anul acesta, Cisco a decis schimbarea structurii certificării de CCNP. Din 4 examene, se ajunge la 3 examene: ROUTE, SWITCH și TSHOOT. ROUTE și SWITCH sunt, în mare parte, BSCI, respectiv BCMSN. ROUTE tratează subiecte ca OSPF, EIGRP, BGP și IPv6 și SWITCH tratează VLANs, STP, Securitate Layer 2. THSOOT este examenul nou introdus, ce acoperă depanarea problemelor legate de EIGRP, OSPF, BGP, VLANs, VoIP,  ACLs.

Cum examenul de CCNA l-am luat atunci când se trecea de la examenul 640-801 la 640-802, așa și CCNP-ul l-am prins pe final, cu cele 4 examene.

Cisco Expo 2010 – The End

M-am întors să iau de la Cronus premiul (anul trecut a fost mai cool: un stick usb). Cu ocazia asta am aflat și ce era cu ecranul pe care a fost quiz-ul. Este o folie specială, cu senzori de atingere ce se lipește pe o suprafață transparentă. Pe ea, din spate, de pe un proiector se proiectează imaginea. De asemenea, am aflat că ei sunt și singurii parteneri Cisco din România care implementează soluții Wireless Mesh (era în quiz).

Multe dintre expozanți aveau pe mesele lor telefoane IP. A devenit deja ceva normal. Dacă la editia din 2008, subiectele aprinse erau VoIP și Mobilitate, anul acesta, nu prea s-a vorbit de așaceva. Cele mai discutate subiecte au fost virtualizarea și soluții de data centere.

Am văzut niște modele noi de IP Phone-uri (Cisco 9951) la standul Crescendo care arată mult mai stilate (de culoare albă). La Tornado am văzut o soluție de Lightweight Wireless Access Points pe 802.11n cu un WLAN Controller (am avut ocazia să văd înterfața unui WLC). Vodafone de soluții business pentru telefoane Blackberry. Datanet a avut un echipament pentru stabilizarea rack-urilor în timpul seismelor ( un sistem foarte simplu dar deștept). Romtelecom, singurul platinum partner, nici nu s-a mai chinuit cu prezentări de solutii, ei având un stand, cu un bar…

Prezentările nu au fost incredibil de interesante și, în plus puteai merge la maxim 5 prezentări. Dar, la fiecare prezentare (și se țineau 4 în paralel) puteai câștiga un premiu dacă erai în sală.

Faptul că a fost o singură zi a cam stricat farmecul Cicso Expo. Din această cauză, socializarea s-a făcut cam în grabă în puținele pauze de mese. Pe de altă parte, din punct de vedere a organizării, au ales varianta cu mai multă calitate.

Ca o concluzie, a fost interesant evenimentul pentru că s-au mai revăzut unii oameni și alții și-au creat cunoștințe noi. Deși, din punct de vedere tehnic, din prezentări nu aflat lucruri noi, puteai să mai afli care este starea Networking-ului din România.

LE:

Alte impresii: BigLazySysadmin [1], [2] Ubergeek [3].

[1] http://big.lazyadmin.ro/2010/03/17/end-of-cisco-expo-2010/

[2] http://big.lazyadmin.ro/2010/03/19/now-and-then/

[4]  http://ubergeek.ro/2010/03/18/the-end-of-ciscoexpo-2010/

Cisco Expo 2010 Live

Sala de expoziție a fost foarte plină de dimineață.

Prima vizită a fost la Cronus, unde și anul acesta au avut un quiz pentru premii. Din păcate nu au mai avut aplicația pe un IP Phone ci pe un ecran cu touch. I shall return…

Am mers după la Logicom, unde la Cisco Expo 2008 am avut o dicuție interesantă legată de soluții de Voice. Anul acesta mi-au prezentat o soluție Cisco Small Business, care, am aflat, sunt, de fapt, produsele de la Linksys rebrand-uite sub numele Cisco. Aparent Cisco încearcă să elimine complet brandul Linksys, numele rămânând doar pe produsele low end (cum ar fi routerele wireless WRT), nu și în lumea SOHO.

Cea mai interesantă discuție a fost la IBM, unde am vorbit cu cineva de la tehnic. Mi-a prezentat o soluție de optimizare WAN. Produsul este un Cisco WAE (WAN Application Engine) 600. Soluția este gândită de a avea un punct central la HQ și mai mulți clienți în branch offices. Echipamentele sunt puse în serie cu routerele de WAN și comunică între ele pentru a marca traficul ce poate fi fie compresat, fie cache-uit. Optimizările se văd atunci când există în puncte servere web, de fișiere, sau de video/audio streaming.

Ultima oprire înainte de prezentări a fost la EMC2, care, am aflat, este firma ce deține VMWare. Soluția lor integrează Cisco cu VMWare (produse cunoscute ca ESX sau vSphere) și cu produse ale lor. La prezentarea lor au prezentat exact ce produse integrează (printre care Avamar și Ionix).

Cisco Expo 2010 – The Beginning

După un an pauză, Cisco Expo revine în România [1]. Oficial, și anul trecut, în 2009, s-a ținut, dar la distanță, prin Telepresence. Deși au mărit prețul de intrare (150€), au restrâns evenimentul la o singură zi, și anume 17 Martie. Anul acesta, locul de desfășurare este JT Marriott.

21 de participanți anul acesta, printe care un partener Platinum (Romtelecom) și  3 parteneri Gold (Cronus, Frontal și Datanet). Dintre ceilalti parteneri, unii au fost si în alți ani, alții sunt noi intrați în rândul partenerilor.

Ziua de azi, 16 martie, a însemnat ziua pregătirior, adică multă muncă de cărat, mutat, instalat. Firmele au venit cu foarte multe echipamente pentru a-și promova solutiile. Standurile au fost pregătite pentru ziua de expoziție. În paralel, în sălile de prezentare, se vor ține prezentările tehnice.

[1] http://www.cisco.com/web/RO/ciscoexpo/2010/index.html

Modern exams

Unele din examene de la Calculatoare (în general cele din grupul Systems CS: USO, RL si PR) au încercat să se modernizeze, trecând de la foi scrise ce luau ore pentru corectare, la un sistem mai automatizat.

Un prim pas a fost introducerea testelor cu cod de bare. Fiecare student primea o foaie A4 pe care erau un număr de întrebări grilă. Întrebările erau aleatoare, la fel și răspunsurile, astfel încât fiecare student are, practic, un examen unic. Fiecare întrebare și fiecare răspuns are atașat un cod de bare. La corectare, sunt scanate codurile răspunsurilor date și codul foii de examen și, folosind o bază de date sunt corectate automat grilele. Astfel, efortul de corectare se reduce la scanarea codurilor, reducând considerabil timpul necesar.

Următoarea îmbunătățire e trecerea în totalitate pe calculator. Fiecare student are în față un calculator cu un browser care are grila. Platforma Moodle oferă un sistem foarte bun pentru un astfel de examen. Studenții au conturile unice, sincronizate dintr-o bază de date LDAP, pe baza cărora accesează o grilă. Grilele conțin întrebări dintr-o bază de date și sunt aleator afișate. Corectarea se face instant și automat. Astfel, se economisește și hărtia ce ar fi fost necesară la un examen normal și timpul de a trece din format digital pe hârtie și apoi, la corectare, timpul de scanare a rezultatelor înapoi pe calculator.

Accesul neautorizat poate fi blocat prin setarea unor parole, pe care doar asistenții le știu și pe care le sunt date studenților în momentul începerii examenului. Și pentru a face mai high tech procesul, anul acesta, la USO, sincronizarea desfăsurării examenului s-a făcut prin telefonie VoIP.

StartSSL Notary

După ce Thawte a renunțat la programul Web Of Trust [1], nu prea am mai lucrat cu certificate digitale personale. Asta până ce am aflat de la cineva [2] de StartSSL.

Ca Thawte, StartSSL oferă certificate gratuite de email. Pentru a obține un certificat semnat cu numele tău (Class1) trebuie să intri în Web of Trust.  Este nevoie de semnături de la doi notari pentru a deveni validat în sistemul WoT.

Diferența față de Thawte, este că, pentru a deveni Notar, trebuie să achiziționezi un certificat Class 2 de la ei, în valoare de 40$. Validarea este valabilă timp de un an, după care contul este retrogradat la unul de Class1. Pentru a rămâne notar, trebuie ca în fiecare an să fii validat de către alt notar, sau să achiziționezi din nou un certificat Class 2.

Mai interesant decât Thawte WoT este faptul că nu se dau doar certificate de email ci și certificate SSL pentru servere Web. Interfața de pe site-ul companiei este una forte bine pusă la punct.. este și ușor și plăcut de lucrat cu uneltele puse la dispoziție.

De asemenea, au pus la dispoziție și un sistem de OpenID [3].

wot-seal

[1] http://alexj.info/?p=1068

[2] http://ubergeek.ro/2009/12/14/an-alternative-to-thawte/

[3] https://alexj.startssl.com

2009 Review: Personal

Partea a IV-a, ultima și cea mai subiectivă… Pentru mine, anul 2009 a fost destul de intens, cu multe evenimente și, mai ales, cu multe persoane.

Lucrul de care sunt, probabil, cel mai mândru sunt studenții mei de la USO și de la Cisco. La începutul anului (calendaristic) eram foarte bucuros de (și pentru) studenții din cele două semigrupe de la USO pentru rezultatele obținute în sesiune. Și m-am bucurat că am păstrat cu mulți dintre ei legătura în timpul anului, cu diverse ocazii. Cu unii din ei am ținut două semestre la clasele de CCNA. Pe lângă cele două clase ‘speciale de CA’ cu studenții ce terminau anul I, am mai avut încă o clasă în vară, unde, probabil, am investit cel mai mult efort pe o clasă. De asemenea, semestrul acesta am luat 3 semigrupe la USO, unde am mulți studenți isteți și descurcăreți, cu foarte mult potențial (chiar dacă unii sunt puțin alintați). Și am ținut și câteva laboratoare de RL când alții au avut probleme și aveau nevoie de înlocuitori.

Chiar dacă am fost profesor/instructor/asistent, am fost și student. Au fost cursurile din facultate, care au fost cam cele mai interesante din cei 4 ani, dar cărora nu le-am dat importanța ce o meritau. În afara lor, au fost multe cursuri…

La începutul anului am fost trimis la un Curs de Securitate în Paris. Am avut noroc că am fost selectat printre cei ce au participat la program și a fost o experiență foarte interesantă, alături de oameni interesanți.

În vară, am participat la un training la distanță, Juniper Summer School, la două cursuri, unul de routing și unul de switching. Dacă tot am învățat materia mi-am dat (și luat) și două ceritificări: JNCIA-ER și JNCIA-EX.

Tot în vară am fost student la Cisco la BSCI și în toamnă mi-am dat și examenul, alături de cel de BCMSN. Deci anul acesta am dat 4 examene de certificare și am obținut 2 certificări jumătate (sunt pe jumătate CCNP).

Dar cea mai mare parte din vară a fost ocupată de USO și pregătirea laboratoarelor. Bootcamp-ul de USO a fost, ca întotdeauna, intens… dar fun.

Au fost destule lucruri în care m-am implicat… la ROSEdu (CDL, RTT), în Academia Cisco (CCIE lab) și în facultate (Karaoke, Winter Skating, Boboc Advisory Board).  Am avut și proiecte în care eram responsabil dar care nu mi-ar fi ieșit fără ajutorul celor din jur (cum ar fi sistemul de telefonie VoIP din facultate). Dar cel mai important a fost, pentru mine, faptul că m-am ‘implicat’ în viața unor persoane mai speciale pentru mine.

Ca de obicei, am fost la multe prezentări și multe conferințe.

Distracție a fost destulă, la multe evenimente: ‘excursia’ din Paris, bootcamp-ul de USO, lucrul la CCIE lab, Karaoke din EC105, ieșirea la patinoar, petrecerite de Crăciun  ale ROSedu și ale Academiei, teambuilg-ul Academiei, precum și la toate ieșirile la suc/bere cu prieteni și colegi. Și au fost și multe, multe zile de naștere, fiecare cu ceva unic.

Și totuși, la final, cel mai mult au contat oamenii care au fost anul acesta în viață mea… colegi, colaboraori, prieteni noi, prieteni vechi, prieteni foarte apropiați. Persoane cu care am râs, cu care am muncit, altele cu care m-am mai certat. Prieteni care au fost lângă mine și la bine și la rău și de care am fost alături când aveau ei nevoie. Și mai este și persoana care a fost mai mult decât un prieten…

Ca o concluzie a acestui an…. What matters? It’s the little things.

La mulți ani.

2009 Review: ACS/CS

O retrospectivă destul se subiectivă legată de activitățile desfășurate în cadrul grupului nostru din facultate. Part III.

În Facultatea de Automatică și Calculatoare și/sau în Catedra de Calculatoare. Misc.

Anul acesta s-a încercat mai mult ca anii trecuți de a forma, în rândul studenților, un sentiment de apartenență la Facultate. Și asta prin mici evenimente de socializare (proiectul ‘timeout’)… spre exemplu…

În vară, s-au organizat două seri de Karaoke în Facultate. Studenții (în general, cei ce făceau stagii de practică) alături de asistenți și profesori, s-au adunat în EC105 și a cântat fiecare cum a știut mai bine melodii pop,rock, rap și populare.

Dar evenimentul cu cel mai mare număr de oameni a avut loc înainte de vacanța de iarna: ACS Winter Skating [1]. Patinoarul din Drumul Taberei a fost închiriat timp de o oră doar pentru Facultatea de Automatică și Calculatoare. Au venit studenți din anul I până la master, precum și profesori și asistenți.

Un alt proiect, concentrat pe studenții de anul I, a fost Boboc Advisory Board [2]. La începutul anului universitar, bobocii au fost duși într-un tur al Politehnicii (chiar dacă vremea nu a ținut cu noi). În următoarele săptămâni a urmat o serie de prezentări despre ce înseamnă studenția.

Pe lângă conferințele open source, s-a ținut și o conferință despre Web. How-to-Web [3], organizat de ASPI, s-a ținut pentru prima dată la sfârșitul lui octombrie și a atras un număr mare de pasionați ai Web-ului.

Anul acesta a marcat și aniversarea de 40 de ani a Catedrei de Calculatoare.

Din punct de vedere a infrastructurii, rețeaua facultății a fost refăcută, făcându-se upgrade la 100mbps la 1gbps, respectiv de la 1gbps la 10gbps în mare parte din laboratoare. Cu această ocazie, mi-am luat și un proiect personal: o rețea de Voice over IP în facultate (telephony.cs), care cuprinde acum 10 săli.

Printre lucrurile noi se numără și introducerea unor mastere noi, printre care și unul de Securitatea Rețelelor.

Laboratorul de Electronică Aplicată [4] a ținut încă două semestre și este din ce în ce mai căutat de cei care doresc să facă electronică în afara orelor din facultate.

Systems.cs

În grupul nostru (USO,RL,PR,SO,PSO) a fost, ca de obicei multă treabă. De exemplu, în sesiunea din iarna trecută (începutul anului calendaristic) la USO, s-a dat, cu succes, examenul final în totalitate online, la toate seriile (CB-ul deja făcea asta). În vară, cartea de USO a fost rescrisă (cuprinde acum atât noțiunile necesare la USO, cât și noțiuni generale pentru Sisteme de Operare) și laboratoarele refăcute conform feedbackului primit anul trecut. La PR s-a creat un model nou și mai interesant pentru laborator (maparea pe certificarea BSCI și construirea laboratoarelor ca niște scenarii în ‘viață’ unei companii bazate pe echipamente Cisco). Dar cele mai noi materii au fost cele de master (ca PISR și SRS ) unde și cursurile și laboratoarele au fost ținute pentru prima dată.

[1] http://patinoar.cs.pub.ro/wiki

[2] http://boboc.cs.pub.ro

[3] http://www.how-to-web.net/

[4] http://eap.cs.pub.ro/

2009 Review: ROSEdu

O retrospectivă destul se subiectivă legată de activitățile desfășurate în cadrul grupului nostru din facultate. Part II.

ROSEdu [1] a avut un an cu multe proiecte, unele noi, unele mai vechi, dar continuate din anii trecuți.

În lunile martie, aprilie și mai, s-a desfășurat Cursul de Dezvoltare Liberă [2], prima ediție. Cei 16 studenți ce au participat au fost învățați de membrii ROSEdu și alți invitați cum să dezvolte un software bazându-se pe platforme Open Source.

La sfârșitul lui mai a avut loc a treia ediție a eLiberatica [3], eveniment la care mare parte din ROSEdu a participat. Pentru prima dată, ROSEdu a avut și un stand oficial la conferință, împreună cu alte comunități Open Source din România.

Vara, s-a desfășurat ROSEdu Summer of Code [4], la a doua ediție, program prin care studenții își făceau stagiul de practică în cadrul facultății, dezvoltând proiecte Open Source. Pe lângă proiectele de anul trecut, cum sunt WoUSO și CSPay, Hammerfall  sau VMChecker, au fost și proiecte noi ca EDDS sau Xpresso.

Odată cu începerea semestrului I universitar, a început World of USO [5], competiția online destinată studenților de anul I de la Utilizarea Sistemelor de Operare.

Din octombrie s-a pornit un nou proiect, RTT: ROSEdu Tech Talks [6]. Acesta a constat într-o serie de prezentări tehnice pe teme open source, deschise publicului din facultate.

Tot în octombrie, o parte din membrii ROSEdu au făcut parte din echipa software la ACM, faza pe Europa de SudEst.

Și tot în octombrie a fost cel de-al treilea Ubuntu Install Fest cu ocazia lansării Ubuntu 9.10.

În decembrie, ROSEdu a participat la prima ediție a BLUG*OS*Con [7], cu o prezentare în cadrul conferinței.

Un moment important al istoriei ROSEdu a avut loc anul acesta, când comunitatea a devenit, legal și oficial Asociația ROSEdu.

Din punct de vedere al organizării interne, au fost mai multe proiecte mici. Printre acestea se numără redesign-ul site-ului principal, instalarea unui software de Groupware (pentru organzarea internă) și întocmirea unei mape de prezentare [8]. S-a încercat și publicarea conținului creat de echipă pe “site-uri mai web2.0” pentru ca mai mulți oameni să aibă acces la aceste resurse… prezentările au fost puse pe Scribd [9] și filmulețele pe Vimeo [10]. Și avem și grup pe Facebook 🙂

[1] http://rosedu.org

[2] http://cdl.rosedu.org

[3] http://www.eliberatica.ro/2009

[4] http://soc.rosedu.org

[5] http://wouso.rosedu.org

[6] http://talks.rosedu.org

[7] http://blugoscon.blug.ro/

[8] http://www.rosedu.org/mapa-prezentare-ROSEdu

[9] http://www.scribd.com/rosedu

[10] http://vimeo.com/rosedu/

2009 Review: Academia Cisco UPB

O retrospectivă destul se subiectivă legată de activitățile desfășurate în cadrul grupului nostru din facultate. Part I.

Instructorii din grupul nostru au avut un an plin și în cadrul Academiei locale (ccna.ro) și, mai ales în cadrul CATC România.

Academia Cisco UPB

Academia a avut parte de o reîmprospătare în mai multe sensuri. Are un site nou [1], rezultatul unui proiect ce s-a desfășurat în vară, la ROSEdu Summer of Code, proiect în care echipa de dezvolare a luat platforma open source Moodle și a transformat-o într-un site pe de-o parte business și pe de alta util pentru desfășurarea cursurilor Cisco și Linux.

Printre proiectele interne de reorganizare s-a numărat și refacerea topologiilor de routere și switch-uri din cele două săli ale Academiei. Echipamentele vechi au fost aruncate, s-au adus unele noi și s-a refăcut cablarea. Muncă a fost destulă, dar efortul a meritat. De asemenea, s-a investit ceva timp și în reinstalarea software-ului pe stațiile din laboratoare (upgrade la Windows7 și Ubuntu 9.10).

Dar, probabil, cea mai importantă împrospătare, vine din faptul că au venit un număr foarte mare de echipamente noi pentru un laborator de CCIE. Academia va avea primul laborator din țară dotat specific pentru pregătirea pentru examenul practic de CCIE. Au fost multe zile investite de întreaga echipă pentru achiziționarea (hârțogăraie) mutarea și montarea echipamentelor și lucrurul încă nu este gata… dar anul viitor rack-urile vor fi funcționale.

Alt proiect ce merită menționat este o inițiativă din partea unui instructor, ce constă într-un un site/blog cu articole pentru cei cu adevărat pasionați de lumea Cisco.  Site-ul ccielab.ro [2] se dorește a fi o resursă pentru cine lucrează în viața reală cu echipamente Cisco sau pentru cei ce se pregătesc pentru examenul practic de CCIE. Cry in the Lab, Laugh in the Datacenter.

La sfârșitul verii, toată echipa a fost plecată la un eveniment de Team Builing, pentru se reface înainte de a începe semestrul de toamnă.

Toamna a început cu o campanie de promovare ce a constat într-un concurs cu premii și un Lan Party organizat în holul facultății, numit Academy War Games (AWG).

Imediat după AWG a urmat ACM-ul, concursul de programare susținut de IBM, faza pe regiunea noastră a Europei, unde echipa ccna.ro s-a ocupat de infrastructură.

Per total, echipa de instructori Cisco s-a mărit și în număr dar și în calitate. Și echipa de instructori LPIC a avut un membru nou.

CATC România

Pe partea de CATC, anul 2009 a fost unul foarte important. Primele luni au fost ocupate cu proiectul la nivel internațional numit iCompetition [3]. Multe zile și, mai ales nopți, au fost petrecute pentru dezolvare de conținut pentru concurs.

Alt concurs, ceva mai mic a fost AcadNet, faza națională, organizată la noi.

Pe tema concursurilor, doi dintre instructorii noștrii au obținut locuri în top la Cisco Academy Games în Cehia.

CATC România a căpătat o importanță destul de mare pe regiune atunci când a câștigat dreptul de a fi regională de CCNA Security, cursul nou scos de la NetAcad pentru certificarea cu același nume. Asta a însemnat că academiile din țările din regiune și-au trimis instructorii la noi (virtual, prin WebEx) pentru a putea preda clase de CCNA Security.

Ca o recunoaștere a efroturilor depuse de CATC România, am primit, în octombrie, o vizită din partea lui Amy Christen, vicepreședinte Cisco, responsabilă pe programul NetAcad la nivel mondial. Amy a prezentat noua direcție ce o va lua programul Cisco Networking Academy.

În ultimele zile înainte de vacanța de iarna, am ținut un scurt training de Moodle unor instructori de la echilentul CATC din Olanda. Aceștia doresc să organizeze un concurs similar cu iCompetition la ei acasă.

ITAcad

Anul acesta a marcat nașterea unei noi echipe, echipa Academiei Microsoft [4], parțial desprinsă din cea de la Academia Cisco. Membrii acestei echipe au fost foarte ocupați dezvoltând de la zero materiale pentru cursurile Microsoft.

[1] http://ccna.ro

[2] http://ccielab.ro

[3] http://icompetition.net

[4] http://itacad.ro

Eşti student la Calculatoare Part III

Strânse în ultimul an…

Ești student la Calculatoare dacă…

  • vezi că a doua zi e 14 februarie și te gândești că “mâine se scoate ultima versiune de Debian”, nu că e Valentine’s day
  • citești linia de mai sus după 8 luni și afirmi că “Dar parcă s-a scos pe 15 totuși… a întâziat cu o zi”
  • scuza ta pentru că ai întârziat la o întâlnire este că nu s-a sincronizat calculatorul cu serverul NTP
  • în ghiozdanul tău ai oricând un cablu USB-MiniUSB, un cablu UTP și un cablu de consolă
  • utilizările pentru uleiul de gătit Bunica sunt: făcut omletă, clătite, cartofi prăjit și, cel mai des, uns ventilatoare de la coolere
  • te ceartă prietena ta că ai venit târziu acasă… pentru că ai stat să instalezi Windows 7 și Linux
  • scuza pentru că ai uitat o zi de naștere este că Google Calendar nu a trimis mesaj să te anunțe
  • știi ultima versiune de kernel și noile feature-uri de pe GMail, dar nu știi că a căzut guvernul țării
  • încerci să convingi pe părinți să înlocuiască sistemul de telefonie de acasă cu unul de Voice over IP
  • atunci când se ia curentul la sala serverelor, viața ta nu mai are sens

Blug*OS*Con

Cei de la Bucharest Linux User Group [1] au luna acesta un proiect destul de mare: o conferință open source.

Blug*OS*Con [2] este destinată celor ce folosesc Linux și doresc să afle mai multe despre tehnologiile bazate pe Linux.

Conferința va avea loc în Rectoratul Universității Politehnice București, în sala AN010, pe data de 12 Decembrie 2009. Pentru programul complet, vizitați site-ul oficial.

[1] http://blug.ro/

[2] http://blugoscon.blug.ro/

Thawte Web Of Trust End Of Life

Anul trecut am auzit de la cineva [1] despre Thawte Web of Trust, un sistem prin care am reușit să fac rost de un certificat de email gratuit și recunoscut de una din cele mai mari autorități (CA), Thawte. Sistemul de Web Of Trust funcționează pe bază de puncte, pe care le primești de notari autorizati prin semnarea unor acte oficiale, dar, practic, fără nici un cost. Când acumulai un număr puncte, puteai cere un certificat de email. Dacă strângeai destule, puteai deveni chiar tu un notar și să dai puncte altora. Deși nu știam exact despre ce era cu adevărat vorba, mi-a plăcut noțiunea de a fi Notar Thawte [2].

Dar, din păcate, Thawter WoT nu mai există, lucru aflat de acum mai multe săptămâni [3]. Dar astăzi am primit emailul oficial că s-a închis.

Dear Alexandru Juncu,
As of today, Thawte Personal E-Mail Certificates and the Web of Trust are discontinued and will no longer be available.

What does this mean?
Your Thawte Personal E-Mail Certificate(s) will be revoked and will no longer be able to sign emails. You will still be able to open emails that have been signed with the revoked certificate – the only difference is that when you open the email an error message will appear indicating that the certificate has been revoked.

Probabil nu voi resimți foarte tare acest lucru și probabil că, dacă voi mai folosi certificate pe email, îl voi folosi pe cel de la CAcert.

Oricum, a fost o idee interesantă și păcat de ea. RIP Thawte WoT.

[1] http://ubergeek.ro/2008/05/16/thawte-web-of-trust-sign-in-event/

[2] http://alexj.info/2008/08/15/certificate-digitale-thawte-cacert/

[3] http://big.lazyadmin.ro/2009/09/28/web-of-trash/

Boboc Advisory Board

În această seară a fost o primă întâlnire Boboc Advisory Board [1]. Discuția a fost mai mult una introductivă, și deschisă între studenți (de anul I) și unii profesori din Catedra de Calculatoare. Vlad Posea [2] a pus la dispoziție și o prezentare care să descrie Boboc Advisory Board.

Acest tip de întâlniri se vor repeta săptămânal, de fiecare dată cu o temă de interes pentru studenți.

[1]  http://boboc.cs.pub.ro/

[2] http://vlad.posea.eu/

The World of World of USO

Acum 3 ani câțiva oameni de la ROSEdu [1] au pornit un proiect numit World of USO a.k.a. WoUSO. El era destinat studenților de anul I ce studiau cursul de Utilizarea Sistemelor de Operare de la secția de Calculatoare. Scopul lui era să  introducă un nou mod de a preda o serie de concepte, un mod mai interactiv, mai social și mai distractiv.

WoUSO [2] este, de fapt, un joc multiplayer online. Este accesibil tuturor studenților de la Calculatoare (printr-o legătură cu baza de date de utilizatori a Catedrei). Ei pot intra pe site și pot strânge puncte prin răspunsuri la întrebări tehnice, legate de noțiuni studiate la cursul și laboratoarul de USO. Există o întrebare zilnică (question of the day) standard pentru toată lumea și un quest, cu o serie de întrebări din ce în ce mai grele. Acumulând puncte prin răspunsuri corecte, jucătorii cresc în nivel și în topuri.

Dar elementul cel mai interactiv sunt provocările (challenge-urile). Un student poate provoca alt student la un duel de întrebări și cel ce răspunde la cele mai multe, câștigă puncte.

Proiectul este în al 3-lea său an. Dacă în primul an a fost interesant ca și concept și în al doilea an s-a lucrat mult la calitate, acum, se observă deja o maturiate printr-o atenție la elemente de detaliu în interfață.

WoUSO are acum și o oarecare tradiție și se observă că a ajuns un element  destul de remarcabil pentru semestrul I. Spun asta pentru că în această perioadă toată lumea vorbește despre el. Pe lângă studenții de anul I care sunt principalii beneficiari, sunt și studenții de anul II și III care au jucat versiunile anterioare și le-au găsit interesante și studenți de ani mai mari care nu au apucat perioada WoUSO în anul lor I. Mai multe, mulți asistenți se joacă, pentru că nici ei nu le știu, de multe ori, pe toate :P.

Have fun playing 😉

USO rulz 😀

[1] http://rosedu.org

[2] http://wouso.rosedu.org

Weird Things on Cisco Switches – Case study #2: VTP

Pe un switch Cisco putem configura VLAN-uri (Virtual LANs) pentru a segmenta rețeaua în mai multe domenii de broadcast. VLAN-urile pentru Ethernet sunt de la 1 la 1001 dar există și VLAN-urile extinse, de la 1006 la 4096 (protocolul de trunking IEEE 802.1Q suportă până la 4096 valori) ce pot fi folosite.

Pentru ca un frame să circule în rețeaua de switch-uri, toate switch-urile trebuie să știe de VLAN-ul de care aparține respectivul frame. VTP (VLAN Trunking Protocol), proprietar Cisco, este un protocol care propagă în rețea lista de VLAN-uri. Astfel, în loc de a adăuga fiecare VLAN manual pe fiecare switch,  VTP face treaba pentru noi.

Ce este uneori ciudat este locul unde sunt stocate intrările pentru VLAN-uri. Curiculumul CCNA, în mare, spune că ele nu sunt salvate în running-config din NVRAM ci în fișierul vlan.dat din Flash. Astfel, atunci când trebuie să resetăm switch-ul, trebuie să ștergem și running-config și vlan.dat. Primul lucru de reținut este faptul că VLAN-urile extinse (1006-4096) NU sunt stocate în vlan.dat ci în running-config, deci, dacă se șterge vlan.dat , acestea vor rămâne.

Un alt lucru ciudat l-am observat la o resetare de switch-uri. Dacă există o rețea de switch-uri, conectate și configurate cu VTP, este greu de șters baza de date de VLAN-uri. Atunci când ștergem flash:vlan.dat de pe un switch și îl repornim (pentru că am șters și startup-config), vom vedea că rămân VLAN-urile, motivul fiind preluarea lor din VTP de la celelalte switch-uri, neresetate.

Pentru a putea reseta switch-urile, ar trebui să le trecem in VTP Transparent mode, pentru a nu mai lua de la vecini VLAN-urile. Și aici intervine excepția Cisco: dacă switch-ul este în Transparent, orice VLAN adăugat va fi configurat în running-config (deci înclusiv cele cu ID mai mic decât 1001). Aceste VLAN-uri nu vor fi afectate de ștergerea vlan.dat, deci s-ar putea să rămână active fără să vă dați seama de ce.

Explicația vine, probabil, din faptul că VTP-ul nu transmite în rețea VLAN-urile extinse, deci, switch-ul va încerca să țină în vlan.dat doar ceea ce trimite prin VTP și restul să fie plasat în running-config.

Weird Things on Cisco Switches – Case study #1: DTP

Switching-ul poate fi destul de ciudat nu din cauza protocoalelor și tehnologiilor folosite pe echipamente ci, de multe ori, din cauza diferențelor de comportare între diverse modele de switch-uri sau între versiuni de IOS.

În cazul DTP, Dynamic Trunking Protocol, care ajută la negocierea legăturilor de trunk, este diferență la setarea default pe anumite modele. Un port poate fi fie în ‘auto’, fie în ‘desirable’, fie în ‘non-negociate’. Schema este următoarea (setare capăt #1 – stare capăt#2 => rezultat):

  • auto – auto => access
  • auto – desirable => trunk
  • desirable-desirable => trunk
  • auto – trunk => trunk
  • auto – access => access
  • desirable – trunk => trunk
  • desirable – access => access

Scopul este ca atunci când scoatem două switch-uri din cutie, să știm ce legătură avem când introducem cablul în porturi. Problema este la setarea default a porturilor. De exemplu, pe 2950 (switch Layer2) și pe 3550 (switch Layer3), setarea implicită este ‘desirable‘. Prin urmare, pe două swich-uri de acest model proaspăt pornite, se va negocia un trunk. Pe alte modele, de exemplu 2960 (L2) și 3560 (L3) setarea este ‘auto‘, deci se va negocia un link de tip access (implicit în VLAN 1). Mergând pe aceeași idee, trebuie avut grijă că dacă avem în rețea switch-uri de modele diferite în rețea, s-ar putea să ne trezim cu rezultate neașteptate (un 2950 cu setări default + un 2960 cu setări default, va negocia un trunk).

Aceste observații nu sunt prea clar specificate pe site-ul Cisco, în curriculumul pentru CCNA3 sau BCMSN sau în Certification Study guide, și la un examen de certificare, sau în viața reală, s-ar putea să aveți probleme neașteptate.

Followup: How to Web

Conferința How to Web de sâmbătă [1] [2] a fost mai interesantă decât mă așteptăm. Subiectele au fost atractive și organizarea foarte bună pentru o primă ediție a unui eveniment destul de mare.

Prezentările nu au fost aproape deloc tehnice (lucru nu neapărat bun) dar au fost bine adaptate la ideea conferinței, cea de a aduce împreună pasionații web-ului cu profesioniștii lui.

Printre prezentările interesante s-au numărat una despre “User Experience Design”, în care s-a arătat importanța proiectării inteligente a unei interfețe cu utilizatorul (lecția învățată a fost că o interfață trebuie să fie: usable, useful, valuable, desirable, findable, credible, accessible).

Altă prezentare a fost despre “Cloud Computing”, o noțiune destul de nouă și căutată. În prezentare s-a vorbit despre părțile bune și parțile rele ale Cloud Computing.

O prezentare care nu are neapărat legătură cu web-ul ci cu business-ul a fost “Despre Antreprenoriat”. Un cuvânt ce s-a tot rostit pe parcursul conferinței a fost ‘start-up’, ce se referă la o companie (firmă) ce abia a pornit și este în drum spre succes. Prezentarea respectivă ne vorbea despre cum ar trebui abordată pornirea unei afaceri proprii.

Așteptăm ca pozele de la eveniment, precum și slide-urile, să fie postate pe site-ul oficial.

Felicitări pentru organizatori, ASPI [3] pentru o treabă bună făcută și așteptăm ediția de anul viitor.

Follow-up-ul oficial îl găsiți pe siteul How to Web [4]. Un altul, destul de lung, pe mai multe părți, aici [5], [6], [7], [8].

[1] http://www.how-to-web.net/

[2] http://alexj.info/2009/10/22/conferin%C8%9Ba-how-to-web/

[3] http://www.aspi.ro/

[4] http://www.how-to-web.net/2009/11/si-a-fost-how-to-web-2009/

[5] http://pow4ioc.wordpress.com/2009/10/31/how-to-web-part-i/

Conferința How to Web

Un eveniment pe care nu îl inclusesem pe agenda lunii octombrie pentru că am aflat destul de târziu de el, este How to Web [1].

Aflat la prima ediție, evenimentul este o conferință organizată și destinată mediului academic pe tema Web-ului din ziua de astăzi. How to Web își are ca scop aducerea profesioniștilor din acest domeniu alături de studenții pasionați de lumea dezvoltării Web.

Conferința se desfășoară pe 31 Octombrie în Facultatea de Automatică și Calculatoare, sala EC105, intrarea făcându-se pe bază de bilet. Este organizată de ASPI[2] în colaborare cu firme ca Adobe și Neogen, care vor avea și reprezentanți ca prezentatori la eveniment.

[1] http://www.how-to-web.net/

[2] http://www.aspi.ro/

ACM SouthEastern European Region

Ultimele trei zile au fost în mare parte dedicate ACM-ului. ACM ICPC este un concurs internațional de programare organizat de ACM [1] și sponsorizat de IBM. Concursul are mai multe etape și etapa regională pentru Europa de Sud Est [2] se desfășoară, tradițional, în România, la Universitatea Politehnică Bucuresți [3], sub organizarea Domnului Profesor Nicolae Tăpuș. Printre participanți se numără studenți de la universități din Ucraina, Bulgaria, Macedonia, Turcia, Serbia și România.

Concursul durează 5 ore, timp în care concurenții, în echipe de câte 3, trebuiau să rezolve 11 probleme compuse de un juriu format din reprezentanți ai țărilor participante, într-un limbaj de programare, la alegere. Dacă răspundeau corect, primeau un balon de o anumită culoare. Au fost 44 de echipe, printre care 9 din România și 9 din Ucraina.

Pregătirile au început de miercuri, când în holul Rectoratului UPB s-a instalat infrastructura. Și anul acesta, au existat două echipe de organizare, una de networking (condusă de Răzvan Rughiniș, formată din instructorii Academiei Cisco UPB) și una de software (condusă de Răzvan Deaconescu, formată din oameni din ROSEdu). 60 de calculatoare, 6 switch-uri, ~3Km de cablu UTP, multă muncă fizică și foarte multe soluții tehnice. Printre oameni, au fost destui care au deja experiență de câtiva ani cu organizarea evenimentului (cum ar fi Bogdan Sass sau Radu Petean), lucru ce a făcut ca anul acesta să meargă lucrurile un pic mai rapid și mai bine, datorită lecțiilor învățate în trecut și a trucurilor noi încercate anul acesta.

Vineri a existat o simulare a concursului și sâmbătă a avut loc concursul propriu-zis. Organizarea internă în timpul concursului fucționează după niște regului destul de bine definite, cu oameni responsabili pentru aproape fiecare lucru, cu proceduri sabilite pentru diverse evenimente.

După concurs, a avut loc o masă festivă, unde s-au anunțăt câștigătorii. Locul I a fost luat și anul acesta de Ucraina, alături de alte 6 locuri din top 10. România a ocupat două locuri din top 10.

Etapa finală va avea loc în China, în Februarie 2010.

cm2-logo-panel_joel_wo_lang

[1] http://www.acm.org/

[2] http://acm.ro

[3] http://upb.ro

Academy War Games. ROSEdu Tech Talks

Astăzi, 10 octombrie, au avut loc două evinimente în facultate. La ora 14 a fost prima prezentare din cadru ROSEdu Tech Talks. Prezentarea a fost ținută de Răzvan Deaconescu, care a prezentat Preprocesorul C. La acestă primă sesiune au participat apoximativ 20 de studenți. Prezentarea este publicată pe pagina proiectului [1] și înregistrarea video urmează să fie încărcată. Următoarea sesiune va avea loc pe 20 octombrie.

În acest timp, echipa Academiei Cisco UPB [2] împreună cu echipa Academiei Microsoft [3] lucrau la amenjarea holului EC pentru Academy War Games [4]. LAN Party-ul a început la ora 18:00 și durează toată noaptea. Mare parte din echipa de organizare a evenimentului vine după două ediții de LAN Strike (oranizate de SRAITS), lucru ce au făcut aceast lan party unul mult mai bine organizat. La eveniment, a venit CEO-ul Microsoft România, Călin Tatomir, ce a stat și a jucat împreună cu studenții.

[1] http://talks.rosedu.org/prezentari

[2] http://ccna.ro

[3] http://itacad.ro

[4] http://awg.cs.pub.ro

Agenda lunii Octombrie

A început anul universitar și, cu el, vor veni destul de multe evenimente.
Primul va fi Turul Politehnicii, cel dintâi proiect Boboc Advisory Board [1]. Studenții din anii mai mari vor face un tur (unii pe jos, alții pe bicicletă și alții pe role) al campusului Politehnicii, împreună cu proaspeții studenți ai Făcultății de Automatică și Calculatoare.

Următorul weekend este rezervat pentru Academy War Games [2], un Lan Party organizat de Academia Cisco și Academia Microsoft în facultatea de Automatică și Calculatoare.

În același weekend, începând cu 10 Octombrie, ROSEdu demarează Tech Talks [3], seria de prezentări pe teme tehnice, ce se vor ține la fiecare 10 zile (pe datele de 10, 20, 30 ale lunii).

Pe 17 Octombrie, în Politehnică se desfășoară faza pe Europa de Sud-Est al concursului internațional ACM organizat de IBM.

Următoarea zi, pe 18 Octombrie este programat Ubuntu Install Fest 3 [4] organizat de ROSEdu, pentru studenții dornici să intre în lumea Ubuntu.

[1] http://boboc.cs.pub.ro/

[2] http://awg.ccna.ro

[3] http://talks.rosedu.org

[4] http://rosedu.org/uif

Junos Presentation

în weekend-ul acesta a avut loc un eveniment de team building al instructorilor din Academia Cisco UPB (ccna.ro), unde s-au ținut și o serie de prezentări. Cum în ultimul timp am fost implicat în lucruri legate de Juniper, am vrut să fac o prezentare funny și în același timp ironică (prezentare Juniper pentru Academia Cisco :P). Din păcate, din cauza unor schimbări de program nu am mai ținut prezentarea, dar măcar o fac publică (conține destul de multe lucruri utile).

Juniper Certified Associate in Enterprise Routing

Am reușit vineri să iau examenul JN0-342, ceea e mă face un Juniper Networks Certified Internet Associate in Enterprise Routing. Deci concluzia experimentului [1], este că se poate trece un examen de certificare de nivel entry level fără să ai experiență practică cu echipamentele firmei respective, lucru care este destul de trist pentru că înseamnă că a scăzut calitatea (greutatea) examenelor. Dar, aparent scopul firmelor, fie ele Cisco sau Juniper, este de a avea cât mai mulți oameni certificați ca Associate. Odată ce îi au în lista lor de potențiali profesioniști, îi atrag spre un loc mai înalt în piramida lor de certificări.

cert_inet_asct_graphic_rgb

Am publicat pe Scribd notițele mele pentru examen [2], poate sunt de folos celor ce doresc să obțină acestă certificare. Acestea au fost luate după cursul la distanță ce face parte din Juniper Summer School [3]

[1] http://alexj.info?p=1013

[2] http://www.scribd.com/doc/20162185/Juniper-Summer-School-Routing-Notes-August-2009

[1] http://alexj.info?p=966

Juniper & my Certification Experiment

Juniper pare destul de hotărât să mă convingă să dau o certificare de-ale lor. După ce am făcut o comandă de o carte gratuită de la ei, am intrat pe o listă și sunt inundat de oferte de la ei. Am primit invitație la Juniper Summer School, am mai primit o carte gratuită (JUNOS for Dummies :P) și am primit și un voucher cu o reducere de 100% pentru un examen de nivel Associate sau Specialist.

Am decis să profit de acel voucher și să încerc un mic experiment: să dau și să trec un examen de certificare fără să am nici o experiență practică în respectivul domeniu, învățând mai puțin de două săptămâni. Certificarea este JNCIA-ER (Juniper Associate – Enterprise Routing) și examenul este JN0-324. Examenul este planificat în aproximativ 10 zile și tot ce am la dispoziție este cartea de Junos, niște tutoriale gratuite de pe site-ul lor și video-urile de la Summer School (nu am vreun router sau switch Juniper sau vreun simulator). Singurul lucru oarecum apropiat de un echipament este o mașină virtuală în care emulez Junos, dar care nu are nici un fel de acces prin rețea cu exteriorul (deci nici măcar un ping nu pot da).

Romanian/Bucharest Linux User Groups. Programmers day.

După ce am tot găsit multe site-uri ale LUG-urilor din tot felul de orașe din lume, am fost curios dacă există un Linux User Group pe plan local. Așa că am dat un mic search pe Google și am găsit că există Bucharest LUG [1]. Am intrat pe site-ul lor, am văzut că au și un canal de IRC ( #blug.ro pe FreeNode [2]) și am început să vorbesc cu oamenii de acolo.  În acest weekend am fost și la una din întâlnirile lor care a fost destul de interesantă (am aflat mai multe despre o distribuție numită ArchLinux și despre un soft de telefonie IP făcut în România, Yate).

Am mai căutat puțin și am găsit și o listă [3] de LUG-uri și Comunități Open Source din România (ROSEdu is one of them 😉 ).

În alte știri, azi s-a sărbătorit Ziua Programatorului [4]. Ziua a fost declarată oficial sărbătoare în Rusia [5].

[1] http://blug.ro

[2] irc://irc.freenode.net/#blug.ro

[3] http://wiki.lug.ro/mediawiki/index.php/Comunit%C4%83%C5%A3i_Linux_din_Rom%C3%A2nia

[4] http://www.programmerday.info/

[5] https://news.slashdot.org/story/09/09/12/1548245/Russias-New-Official-Holiday-mdash-Program

Web Browsers in Sept 2009

O perioadă bună pentru a vorbi despre Browsere Web pentru că…
1. Pe 1 Septembrie 2009 Opera 10 [1] a fost lansat în versiune finală. Opera 10 (încă din beta) a fost primul browser care să atingă 100% pe testul Acid3 [2] [3] și, deși are un public destul de restâns, utilizatorii lui sunt extrem de mulțumiți de el.

2. Mozilla și anuntă calendarul său pentru următorul an [4]. Firefox 3.6 este planificat pentru luna Noimbrie 2009. Va mai fi scoasă o veriune minoră, 3.7 în a doua jumătate a lui 2010 iar în ultimul trimestru din 2010 va fi lansat Firefox 4.0.

3. Se împlinește un an de când Google a lansat Chrome, care a avut o evoluție extrem de bună. Numărul de utilizatori a crescut foarte rapid, dar și calitatea lui a crescut (a reușit și el să treaca testul Acid3 cu 100% [5]).

Iată statisticile pentru primele 8 luni din 2009 (după site-ul W3Schools [6]):

2009 IE7 IE6 IE8 Firefox Chrome Safari Opera
August 15.1% 13.6% 10.6% 47.4% 7.0% 3.3% 2.1%
Iulie 15.9% 14.4% 9.1% 47.9% 6.5% 3.3% 2.1%
Iunie 18.7% 14.9% 7.1% 47.3% 6.0% 3.1% 2.1%
Mai 21.3% 14.5% 5.2% 47.7% 5.5% 3.0% 2.2%
Aprilie 23.2% 15.4% 3.5% 47.1% 4.9% 3.0% 2.2%
Martie 24.9% 17.0% 1.4% 46.5% 4.2% 3.1% 2.3%
Februarie 25.4% 17.4% 0.8% 46.4% 4.0% 3.0% 2.2%
Ianuarie 25.7% 18.5% 0.6% 45.5% 3.9% 3.0% 2.3%

Firefox rămâne cam la același procentaj și probabil nu va reuși să treacă de pragul de 50%. Chrome mai mult decât și-a dublat utilizatorii într-un an depășind și Safari și Opera. Se poate observa puterea pe care Google o are în spate. În viitor, sigur procentajul Chrome va crește mai mult, mai ales după ce companii ca Sony au anunțat că vor vinde laptop-urile lor cu Google Chrome instalat pe ele. Opera rămâne un club mai select și,  aparent, nu va reuși să influnețeze major piața. Internet Exporer a început să se conformeze cu unele standarde, deci ar trebui să fie un pas înainte pentru ei și, s-ar putea să își mențină piață. IE8 oferă și randarea lui proprie și oferă și opțiunea de Compatibility Mode pentru a fi compatibil cu versiunile anterioare.

[1] http://www.opera.com

[2] http://acid3.acidtests.org/

[3] http://alexj.info/?p=423

[4] https://tech.slashdot.org/story/09/09/02/1440214/Firefox-40-Goes-Chrome-New-UI-In-Q4-2010

[5] http://alexj.info/?p=978

[6] http://www.w3schools.com/browsers/browsers_stats.asp

IPv6 Part III: Linux Routing

[Part I]
[Part II]

Clientul este un Linux box. Legătura la Internet este prin eth1, interfață peste care se face tunelul 6to4.

După ce am creat tunelul, am aflat că pot cere o clasă de IPv6 să fie routată prin IP-ul meu v6. Astfel, mi-a fost alocată rețeaua 2001:470:9f00::/48 ( 1208925819614629174706178 adrese adică adică aproximativ 1 milion de miliarde de miliarde de adese), pe care am început să o subnetez.

Prima rețea am alocat-o rețelei de pe eth1 (uplink-ul la Internet, precum și legătura cu alte servere locale). Pentru ușurință în denumire, am ales rețeaua 2001:0470:9f00:0141:0085:0037:0208::/112, adresă obținută prin o concatenare (la nivel de notație) a adresei IPv6 /48 alocate cu adresa IPv4/24 (141.85.37.208). Atenție, valorite în binar sunt total diferite, pentru că adresa IPv6 conține cifre în hexadecimal și IPv4 în decimal.

Configurație prin /etc/network/intefaces:

iface eth1 inet6 static
address 2001:0470:9f00:0141:0085:0037:208:1
netmask 112

Routarea IPv6 nu este implicit activată, și pachetele nu vor trece dintr-o rețea în cealaltă. Pentru aceasta, trebuie modificat fișierul /etc/sysctl.conf și decomentată (sau adăugată) linia:
net.ipv6.conf.all.forwarding=1
urmată de un restart a sysctl
sysctl -p

În continuare am alocat o altă rețea /112 pentru tunelul VPN peste care am o rețea IPv4 172.30.0.0/24 în spatele unui NAT. Partea frumoasă aici este că la IPv6 nu mai este nevoie de NAT pentru că sunt adrese routabile IPv6, deci traficul IPv4 va fi translatat la router în spatele unei singure adrese iar cel IPv6 va fi routat normal spre Internet. Rezultatul final a fost conectivitate IPv6 pe două sisteme care se află în cu totul altă rețea decât cea unde există tuneul 6to4, rețea ce se află in spatele unui NAT. Pentru a ajunge la un server IPv6 extern, aceste stații trebuiat să treacă peste printr-un tunel 6to4 aflat peste o conexiune VPN(OpenVPN) până la server unde era routat în altă rețea IPv6 care trecea peste un alt tunel 6to4 și routat mai departe doar prin IPv6.

IPv6 Part II: Linux Configuration

[Part I]

De la provider-ul tunelului [1] am primit următoarele:

Server IPv4 address:      216.66.80.30
Server IPv6 address:     2001:470:1f0a:68d::1/64
Client IPv4 address:     141.85.37.208
Client IPv6 address:     2001:470:1f0a:68d::2/64

Între cele două adrese IPv4 este creat un tunel ce are alocată rețeaua IPv6 2001:470:1f0a:68d::/64 ( deci aproximativ 18 milidarde de miliarde de adrese pierdute pentru 2 adrese…dar nu e problemă pentru că sunt destule ).
Configurarea tunelului poate fi făcută în mai multe feluri.

Temporară prin ifconfig/route

ifconfig sit0 up
ifconfig sit0 inet6 tunnel ::216.66.80.30
ifconfig sit1 up
ifconfig sit1 inet6 add 2001:470:1f0a:68d::2/64
route -A inet6 add ::/0 dev sit1

Temporară prin iproute2

modprobe ipv6
ip tunnel add he-ipv6 mode sit remote 216.66.80.30 local 141.85.37.208 ttl 255
ip link set he-ipv6 up
ip addr add 2001:470:1f0a:68d::2/64 dev he-ipv6
ip route add ::/0 dev he-ipv6
ip -f inet6 addr

Permanentă (on boot) prin /etc/network/interfaces
iface he-ipv6 inet6 v4tunnel
endpoint 216.66.80.30
address  2001:470:1f0a:68d::2
netmask  64
mtu 1480
up ip -6 route add 2000::/3 dev he-ipv6
down ip -6 route del 2000::/3 dev he-ipv6

[1] http://www.tunnelbroker.net/

IPv6 Part I: TunnelBroker & IPv6 Certification

Deși mai configurasem o adresăIPv6 și cu alte ocazii [1], nu intrasem adânc în subiect decât la clasa de BSCI de la Cisco pe care am terminat-o recent. După clasă, pentru că mi-a plăcut subiectul, am încercat să văd IPv6 în viața reală, ceea ce era puțin problematic pentru că legăturile mele la Internet vin numai în varianta IPv4.

Dar am descoperit un site interesant, TunnelBroker [2], care oferă tunele IPv6 peste conexiuni IPv4, gratuit. Provider-ul respectiv are o rețea globală de servere accesibile prin IPv4, dar care routează IPv6 în Internet. Tot ce e nevoie este un server propriu sau un workstation care să aibă un IP public (acesta va fi clientul). Configurația tunelului se face într-o parte automat, pe site și cealaltă parte pe stația locală manual. Instrucțiunile complete se găsesc pe site.

ipv6_ping

Aceeași firmă ce administrează site-ul TunnelBroker și rețeaua de servere, Hurricane Electric, oferă și o certificare [3] de atestare a cunoștințelor despre IPv6. De exemplu, primul test constă într-un quiz despre IPv6 iar al doilea presupune configurarea unui client care să fie capabil să acceseze o pagină IPv6.

IPv6 Certification Badge for AlexJ

Fun fact: Există un ‘experiment’ pentru a promova IPv6 [4], dar care, momentan, pare a fi mort.

[1] http://alexj.info/?p=92

[2] http://www.tunnelbroker.net/

[3] http://ipv6.he.net/certification/cert-main.php

[4] http://ubergeek.ro/2008/08/22/ipv6-experiment/

De ce trebuie să fim profesioniști

Povestea începe în Politehnică, cu o serie de evenimente nefericite legate de infrastructură (links [1], [2]).

Una din probleme a fost furtul unor cabluri de electricitate, ceea ce a dus la o pană de curent în mai multe săli, inclusiv una din sălile de servere ale Facultății de Automatică și Calculatoare. Timp de aproape o săptămână, infrastructura tehnologică din facultate a fost dusă la 0. Învățătura din tot acest timp ar trebui să fie ‘cât de fragilă este tehnologia…’. O sală întreagă de echipamente mai mult sau mai puțin high-end, cu un număr foarte mare de servicii ce rulau pe acele echipamente, a fost redusă la tăcere (“there is no sound worse for a sysadmin than silence in a server room”, trademark Ubergeek [3] ).

Trebuie să înțelegem că dacă vrem să avem un sistem care funcționează avem nevoie de profesionalism la toate nivelurile. De asemenea, trebuie să vedem imaginea în prespectivă și să înțelegem toate slăbiciunile noastre. Fiecare din noi este o bucată dintr-un sistem mai mare, o bucată specializată pe un anumit lucru. De multe ori privim doar bucata noastră și nu ne pasă de ce fac ceilalți. Dar adevărul este că toți trebuie să avem un standard înalt și atunci când ceilalți nu au. Trebuie să găsim soluții și să nu creem probleme noi.

Când vorbim de securitate  în IT, ne gândim din prima la parole, protocoale și algoritmi de criptare, sisteme cu patch-urile aduse la zi și întotdeaua se ignoră securitatea de bază. De aceea nu putem să fim profesioniști cu adevărat în securitate. Dacă avem echipamente de milioane de dolari, avem nevoie de un sistem de securitate fizică și dacă vrem o infrastructură informațională, avem nevoie și de elementele peste care să stea (de exemplu rețeaua electrică). Într-o instituție, ca și într-o companie, dacă există un proiect pentru data center/laborator high-end în care s-a investit o sumă mare de bani, nu trebuiesc ignorate costurile adiacente (ce reprezintă o fracție din costul total). Trebuie investit în securitate și mai ales în redundanță. De multe ori este ușor să configurezi o rețea, dar proectarea inteligentă a ei este dificultatea. Diferența dintre cei care știu să facă un lucru și acei ce sunt profesioniști pe acel domeniu este capacitatea de a gândi în perspectivă respectivul lucru și de a face arhitectura sistemului astfel încât să reziste în timp la orice (sau cât mai multe) situații ce pot ataca sistemul.

O altă problemă, și motivul pentru care sala serverelor nici după două săptămâni nu este refăcută, este nesincronizarea cu o echipă de la o firmă contractată ce reface rețeaua facultății. Din cauza unei deficiențe de management, iar partea tehnologică are de suferit. Profesionalismul iar a avut de suferit.

Încheierea a trebui să fie pe ideea de ‘forme fără fond’. În Politehnică ne lăudăm că avem rețea de 10 Gigabit/s, dar adevărul este că între legătura internă de 1GB și fibra externă de 10GB/s se află un switch de 100MB/s.  Lipsa profesionalismului în proiectare și management și dorința de a ne lăuda cu lucrurile de care nu suntem în stare duc la situații stupide.

în ultimul rând, dacă facem parte dintr-o comunitate, instituție, firma etc., nu trebuie să ne considerăm parte din ea atunci când lucrurile merg bine și atunci când atunci când ele merg prost. Degeaba când cineva te întreabă “Unde ești profesor/angajat/student?” și răspunzi “la Politehnică”  dacă atunci când exita o problemă afirmi “ăia de la Politehnică nu fac nimic”.

[1] http://ubergeek.ro/2009/08/14/upb-romania/

[2] http://big.lazyadmin.ro/2009/08/17/upb-fala-%C8%9Barii-noastre-e/

[3] http://ubergeek.ro

OpenWRT on Linksys WRT54GL

Cu o nouă ocazie de a mă juca cu Linksys-ul meu WRT54GL, am decis să schimb DD-WRT [1] cu OpenWRT [2].

OpenWRT este tot un firmware Open Source bazat pe Linux special făcut pentru routerele de acasă. Deși interfața web OpenWRT, la prima vedere, este mai primitivă decât cea DD-WRT, ea este, de fapt, mult mai flexibilă, permițând mult mai multe configurații. Dar, implicit, nu oferă la fel de multe servicii.

Linia de comanda (acces tot prin ssh), mai exact, structura directoarelor și a serviciilor este mult mai asemănătoare cu o structură a unei distribuții Linux.

Un utilitar foarte interesant este package manager-ul opkg care este asemănător cu dpkg/apt-get sau rpm/yum. Pachete noi pot fi instalate dintr-un repository de pe Internet folosind comanda opkg. În interfața web există o pagină dedicată administrăii pachetelor.

În rest, orice ce se poate face pe o mașină Linux, se poate face pe OpenWRT. Singura problemă este spațiul pus la dispoziție de flash-ul routului.

[1] http://alexj.info/?p=845

[2] http://www.openwrt.org/

WebBrowers & Acid3

Iată o serie de rezultate a browserelor noi potrivit testul Acid3 [1] ce testează compatibilitatea cu standardele Web.

Firefox 3.0.11 (Windows 7 RC ) – 72%

Firefox 3.0.11 (Ubuntu 9.04) – 71%

Internet Explorer 8 (Windows 7 RC) – 20 %

Firefox 3.5 (Windows 7 RC) – 93%

Google Chrome 2.0.172.33 (Windows 7 RC) – 100%

Opera 10 Beta (Windows 7 RC) – 100%

Chromium (Ubuntu 9.04) – 79%

Firefox 3.5 Beta4 (Ubuntu 9.04) – 92%

Concluzii:

Firefox (Gecko) a reușit să urce cu 20 de procente și poate va reuși să ajungă din urmă WebKit. Presto (Opera) a rămas la 100% și WebKit (Chrome) a reușit să ajungă și el la 100%.

Internet Explorer a reușit să afișeze pagina cu rezultatul. [2]

[1] http://acid3.acidtests.org/

[2] http://alexj.info/2008/12/10/webbrowsers-cine-foloseste-standardrele/

Google Calendar & imports

Am primit azi un email de la Juniper în care am fost acceptat la Juniper Summer School [1]. Ce a fost interesant e că mi-au trimis și un fișier în care era salvat calendarul programului. Era un fișier .ics, care am aflat că este format iCalendar (by Apple). Cum nu foloseam iCalendar, mi s-a părut inutil, dar în email era menționat faptul că pot folosi fișierul inclusiv în Google Calendar.

Astfel am aflat de funcția de import de la Google Calendar [2] . Sunt compatibile mai multe fișiere, printre care și acesta.

Pentru a importa un calendar, se intră pe Google Calendar. Sub lista de calendare există butonul de Settings, iar pe pagina de setări pentru fiecare calendar, există un link de Import Calendar. Pe pagina de Import se încarcă fișierul și se poate alege ca datele din fișier să fie integrate într-un calendar existent sau să se creeze un calendar nou.

Security boost in Wireless with VPN

Când ai un laptop, ești foarte fericit când găsești o conexiune Wireless pentru a te conecta la Internet. Problema este că, de obicei, rețele publice sunt Open, adică nu au nici o securitate în transferul de date. Majoritatea software-ului  nu trimite encriptate datele și este foarte ușor ca cineva să captureze parole sau conversații.

O soluție ar fi VPN, Virtual Private Network. Nu este o soluție implementabilă de oricine, pentru că necesită un server conectat la Internet cu un IP public. Pe serverul respectiv trebuie instalat un daemon cum este OpenVPN [1]. De asemenea, pe fiecare calculator ce va folosi rețeaua VPN va fi necesară instalarea clientului OpenVPN. Pentru fiecare client, se va genera o pereche de chei publică-privată pentru a se asigura că restricționarea accesului la serviciul de VPN.

Un tutorial despre cum se poate crea o rețea VPN se găsește pe site-ul OpenVPN [2]. O versiune mai scurtă și mai practică pe Big Lazy Sysadmin [3].

După crearea rețelei, pe serverul VPN trebuie activată rutarea rețelei private în cea de Internet (cel mai probabil prin NAT). Aici intervine problema unei soluții VPN: tot traficul trece prin serverul respectiv, ceea ce înseamnă că viteza maximă atinsă pe un client este  jumătate din viteza serverului (pentru că traficul trebuie să circule în două direcții). Dar pentru persoanele ce țin la securitate, prețul merită.

[1] http://openvpn.net/

[2] http://openvpn.net/howto.html

[3] http://big.lazyadmin.ro/2007/04/27/openvpn-gateway-tutorial/

VMware Player & .vmx generator

Principalul program de virtualizare pe care îl folosesc este VMware, care vine în multe variante. Există versiunea de Workstation, dar care nu este gratuită. Este varianta server, free, dar necesită înregistrarea unui cont pentru a obţine un serial. În plus, versiunea nouă Server (2.0) este cu o interfața web mai greu de administrat. Aşa că, varianta cea mai rapidă pentru a reuşi a porni o maşină virtuală este VMware Player [1].

Problema cu Player este că nu permite creerea de maşini noi sau modificarea caracteristicilor unei maşini existente. Datele despre maşină sunt stocate într-un fişier .vmx sub formă de text clar. Deşi fişierul poate fi scris de mână, pentru uşurinţă în utilizare există generatoare de fişiere .vmx. Un exemplu este generatorul online EasyVMX [2].  Site-ul permite generarea fişierelor necesare (configuraţie şi hard disk-uri virtuale) pentru maşină ce pot fi descărcate şi rulate cu VMware Player.

[1] http://www.vmware.com/download/player/

[2] http://www.easyvmx.com/

Juniper Summer School

Juniper [1] își menține politica de training (adică gratuit și la distanță) și introduce Juniper Summer School [2].

Programul are două direcții, una de Routing și una de Switching și de va desfășura în două sesiuni, una în iulie și una în august.

Înregistrarea este gratuită (în limita locurilor). Cursurile se vor ține online dar vor avea parte de suport live din partea unor instructori.

[1] http://juniper.net/

[2] http://junos.juniper.net/summerschool/

Diacritice(UTF-8) & JDBC/mySQL/HTML

Ce am dorit să fac: un program în Java ce capturează conversații de pe IRC și le stochează într-o bază de date mySQL; din acea bază de date se ia prin PHP și se afișează pe o pagină HTML. Deși pare destul de mult de făcut, necesită puțin cod, dar multă atenție la interconectarea elementlor: programul Java, conectorul dintre Java-mySQL (JDBC), baza de date mySQL și script-ul PHP.

Am creat ‘topologoia’ necesară și programul mergea ok. Dar am descoperit rapid o problemă: pagina web (HTML+PHP) nu afișa diacritice. Și am început să caut prin fiecare element să văd unde era problema ( oricare din componente putea să ducă la problema aceasta).

Am început prin modificarea paginii PHP/HTML și forțarea ca browserul să citeacă caracterele în format UTF-8. Codul nu depinde de PHP (am presupus că el transmite corect din baza de date în HTML) ci de headerul HTML.

<head>  <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />   […]  </head>

Al doilea test a fost făcut pe mySQL. Implicit, baza de date codează folosind Latin.  Și tabela unde se făcea scrierea trebuia trecută pe UTF.

CREATE TABLE `chats` ( [..] ) DEFAULT CHARSET=utf8;

Cum programul Java imprima corect la stdout diacriticile, problema trebuia să fie la JDBC. Suportul pentru UTF a fost adăugat în JDBC, dar trebuia specificat la conectarea cu baza de date. Acest lucru se face pasând un parametru la  URL-ul bazei de date.

jdbc:mysql://my_server/my_data_base?unicode=true&characterEncoding=utf-8

ROSEdu Summer of Code 2009

Se apropie vara și, cu ea, vin stagiile. Pentru studenții pasionați de dezvoltare software, ROSEdu [1] a pregătit și în acest an stagii în cadrul programului RSoC: ROSEdu Summer of Code [2]. Anul acesta numărul de proiecte se ridică la 9.

RSoC se adresează studenților din Automatică și Calculatoare din orice an dar în special celor care doresc să își facă stagiul de practică în facultate, lucrând la proiecte open source.

Pentru a fi admiși în program, trebuie să vă înscrieți pe site și să veniți la un interviu. Mai multe detalii găsiți în secțiunea de FAQ a site-ului RSoC 2009. Termenul limită de înscrieri este 20 iunie.

Iată o scurtă prezentare a programului.

[1] http://rosedu.org

[2] http://soc.rosedu.org

VirtualBox far away from a business solution

Având nevoie de o mașină Windows Server și având la dispoziție doar un server Linux la dispoziție am decis să instalez o soluție de virtualizare. Alegerea inițială a fost VMware server 2 [1], pe motivul că interfața web oferă un control foarte bun de la distanță. De asemenea conectarea la rețea se face foarte ușor.

Problema că serverul respectiv avea resurse modeste și VMware ar fi consumat mare parte din ele. A fost un bun moment de a testa VirtualBox ca o soluție de server.  La nivel de utilizare pe o mașină fizică locală, VirtualBox rulează destul de bine, consumând puține resurse.

VirtualBox vine în două versiuni, VirtualBox OSE, distribuită sub licență GPL și VritualBox distribuită sub licență PUEL (closed source dar gratuită pentru uz personal și educațional). Una din diferențe este că cea PUEL vine cu VRDP (VirtualBox Remote Desktop Protocol), ce oferă posibilitatea controlării mașinii de la distanță, lucru important pentru situația în care serverul era un Linux box în text mode și altă interfața (web) nu exista pentru control.

Instalarea VirtualBox s-a făcut ușor (apt-get spre deosebire de VMware care nu este oferit pe repositories) dar configurarea a fost mai grea. Neavând o interfață web, lucrurile trebuie făcute prin linia de comandă. Comnezile cheie sunt VBoxManage și VBoxHeadless. Iată un exemplu de creere mașină cu harddisk și pornirea mașinii:

VBoxManage createvm -name “win2003server” -register
VBoxManage modifyvm “win2003server” -memory “256MB” -acpi on -boot1 dvd -nic1 nat
VBoxManage createvdi -filename “win2003server.vdi” -size 10000 -register
VBoxManage modifyvm “win2003server” -hda “win2003server.vdi”

VBoxHeadless -startvm “win2003server”

Implicit, VRDP rulează pe portul 3389 și poate fi accesat printr-un client RDP (inclusiv Windows Remote Desktop), dar, aparent, acestă bucată are anumite probleme și nu a funcționat.

Altă soluție este instalarea unui server VNC pe mașina virtuală. Pentru acesta trebuia instalat sistemul de operare client pe un alt calculator cu VirtualBox (cu interfață grafică) și mașina migrată pe server. Punctul cel mai slab al VB este migrarea. Dacă în VMware, tot ce trebuia făcut era mutarea fișierelor, în cazut VirtualBox, mutarea fișierelor nu duce neapărat la păstrarea integrității măsinii. Din cauza fișierelor de configurare care depind de mașină (căi absolute și verificări a informațiilor măsinii fizice) nu pot fi mutate mașinile atât de ușor. După înțelegerea și editarea fișierelor XML se poate ajunge la o mașină migrată cu succes (o altă opțiune este mutarea harddisk-ului și crearea unei mașini de la zero ce folosește acel harddisk).  Și după rularea mașinii, a doua mare problemă VirtualBox este configurarea dispozitivelor de rețea care se face foarte greu.

Concluzia este că VirtualBox este departe de nivelul VMware, deși este un produs destul de promițător. Chiar dacă Sun a făcut produsul Open Source în mare parte, comunitatea încă nu a oferit unelete care să ajute soluția de virtualizare (un posibil proiect de a introduce o interfață web pentru VB, similară cu VMware Server 2, este abia la început).

[1] http://alexj.info/?p=832