De NSLU2 als printserver

NSLU2Jaren geleden kocht ik een NSLU2, een device waarmee je je harde schijven kon delen op een netwerk. Ik kocht het echter voor een heel andere reden: het was hackbaar! Er bestond al een hele community rond die aangepaste firmware had gemaakt voor het toestel. Ik zette er OpenSlug op en testte mijn eerste webserver. Dat was cool! Maar dat was het dan ook :-( De NSLU2 vloog in de kast en werd nooit meer gebruikt.

Tot vandaag. Mijn schoonvader wil zijn usb-printer in het netwerk steken en dat gaat zomaar niet. Je hebt er een printserver voor nodig. Ik dacht meteen aan mijn NSLU2 van 5 jaar oud. De nslu2-linux community zag er wat uitgedund uit, maar wat mij wel opviel, was dat men er nu ook OpenWRT kon opzetten. Dit is een populaire opensource firmware voor routers.

Dus ik ging aan de slag. Ik downloadde de laatste OpenWRT Backfire 10.03.1 for NSLU2 versie (uit december 2011) en flashte de EEPROM opnieuw zoals ik dat 5 jaar geleden ook had gedaan, met een Windows tooltje (instructies). En voila, 5 minuutjes later had ik OpenWRT op mijn NSLU2 staan. Het mooie aan OpenWRT is dat het een webinterface heeft. Dat maakt het de niet-zo-linux-geek wel gemakkelijker. Het IP adres en dergelijke kun je gemakkelijk zelf instellen via de webinterface.

Nu kwam de tweede grote opdracht: maak er een printserver van. Ik keek naar de mogelijkheden van CUPS, maar zag dat je hiervoor extra storage aan je NSLU2 moest hangen. Dat wou ik niet. Ik vond wat ik moest hebben in p910nd. p910nd is een printservice zonder print spooler. Het luister op poort 9100 (vandaar de p910n, met n = printernummer) en sluist de printeropdrachten gewoon door. Mensen die zelf een netwerkprinter hebben, zullen poort 9100 wel herkennen. De installatie kun je hier volgen, maar hieronder geef ik het minimum mee om de printerserver draaiende te krijgen:

Installeer eerst de usb poorten:

opkg update
opkg install kmod-usb-printer

Je kunt het volgende ook doen, dan installeer je meteen ook alle usb packages om ook harde schijven, usb sticks, seriele poorten en zelfs audio usb kaarten er aan te kunnen koppelen:

opkg update
opkg install e2fsprogs cfdisk fdisk swap-utils usbutils
opkg install kmod-usb-core kmod-usb2 kmod-usb-ohci kmod-scsi-core kmod-usb-storage kmod-usb-serial
opkg install kmod-fs-msdos kmod-fs-nfs kmod-fs-nfsd kmod-fs-ntfs kmod-fs-vfat kmod-fs-ext2 kmod-fs-ext3
opkg install kmod-nls-base kmod-nls-cp437 kmod-nls-cp850 kmod-nls-utf8 kmod-nls-iso8859-1 kmod-nls-iso8859-2

Daarna installeer je p910nd zelf:

opkg update
opkg install p910nd

Er is ook een web interface voor voorzien (werkt enkel op de laatste versie van OpenWRT):

opkg update
opkg install luci-app-p910nd

Vervolgens zet je best nog de firewall af van de NSLU2. Dat kun je via de webinterface: System, Startup. In principe heeft die dat niet nodig. De NSLU2 is immers geen router. Normaal zou er ook een optie “services” moeten bijgekomen zijn in de web interface. Daar zul je de p910nd service terug vinden. Daar moet je een vinkje aanvinken voor je eerste printer en kan je eventueel nog printers toevoegen!

De printer toevoegen in Windows:

Zelf heb ik XP, maar ik veronderstel dat dit voor Vista/7/8 gelijkaardig is.

  • Ga naar Printers en Faxapparaten
  • Nieuwe printer toevoegen
  • Lokale printer kiezen (geen netwerkprinter)
  • Kies voor “een nieuwe poort aanmaken”
  • Kies “Standard TCP/IP port” uit de lijst
  • Vul daar het IP adres van je NSLU2 in
  • Nu gaat hij op zoek naar je printer, dit kan een tijdje duren want de printer (eigenlijk de NSLU2) stuurt geen discovery data uit.
  • Kies voor aangepast
  • Zorg dat de poort op 9100 staat en het protocol op RAW
  • Kies de juiste driver voor je printer
  • Druk eventueel een testpagina af en voila: je printer schiet in gang.

Om de printer nog sneller te laten vinden door windows, kun je dit hier nog uitvoeren.

De volgende stap word een scanner aan de NSLU2 koppelen zodat je over het netwerk kunt scannen. Een eerste aanzit vind je hier.

Mochten er vragen zijn, laat maar weten via commentaar.

Sam

Quiz me Quick: de reden om Prime te nemen

Quiz me Quick, de nieuwe reeks van Bart De Pauw, ging vorige week in première op Prime, de betaalzender van Telenet. Ik moet zeggen: “waaaw”. Geniale beelden, mooie close-ups, innemende slomotionbeelden, prachtige belichting, grappige muziekkeuze, noem maar op… De Pauw en Jan Matthys (regisseur) leveren echt sublieme beelden af. De fijne humor zoals we ze kennen uit Buiten de Zone, maakt het helemaal af. Echt de reden om Prime te nemen (helaas de enige reden). Slimme zet van Telenet om dit nu te doen.

Hilarisch fragment: zeker als je de acteur herkent..

Een domainnaam bij Easyhost en Hosting bij OVH.nl

Onlangs heb ik een hosting bij ovh.nl besteld. Een zeer goedkope, maar degelijke hosting. Alleen is de support en de managerinterface wat verwarrend aangezien ze van origine Frans zijn en hun Nederlands dus niet opperbest is.

Ik had ook nog een domeinnaam (zonder hosting) bij Easyhost.be staan. Bij OVH hadden ze mij wijsgemaakt dat ik de nameservers van ovh moest invoeren op mijn easyhost account. Op die manier konden zij mijn domeininstellingen afhandelen. Alleen, dat werkte voor geen meter.

De oplossing is eigenlijk veel eenvoudiger. Laat je easyhost-nameservers staan en voeg een A-record bij “DNS records aanpassen”. Neem dan bvb ‘www’ als voorvoegsel en laat die verwijzen naar het ip-adres waar ook je andere domeinnaam bij ovh.nl naar verwijst (bij ovh.nl ben je verplicht een domeinnaam te nemen bij je hosting).

Nu bij ovh.nl, log in je op de manager. Ga je naar de configuratie van je domeinnaam bij ovh. Kies je voor Multi-domain en daar vul je je domeinnaam van Easyhost in. Je kiest ook een map op de ftp waar hij naar moet verwijzen.

é voila, klaar is kees…

Clips downloaden van WTV-Focus

broncode pagina:

var s1 = new SWFObject("/sites/all/themes/focus_wtv/jwplayer/player.swf",'player','480','290','9');
s1.addParam('allowfullscreen','true');
s1.addParam('allowscriptaccess','always');
s1.addParam('wmode','transparent');
s1.addVariable('streamer', '<strong>rtmp://rmm.fstreams.cdn02.rambla.be/rmm</strong>');
s1.addVariable('file','<strong>media/390nieuwsfocus000.mp4</strong>');
s1.addVariable('image','http://rmm.cdn02.rambla.be/media/390nieuwsfocus_40.jpg');
s1.addVariable('type', '');
s1.addVariable('plugins', 'googlytics-1');
s1.write('flash-container');

tool: rtmpdump
host:
rtmp://rmm.fstreams.cdn02.rambla.be/rmm
playpath: mp4:media/390nieuwsfocus000
output: 390nieuwsfocus000.mp4 (zelf te kiezen)

rtmpdump command:
rtmpdump –rtmp rtmp://rmm.fstreams.cdn02.rambla.be/rmm –playpath mp4:/media/390nieuwsfocus000 -o 390nieuwsfocus000.mp4

That’s it!

Het geluid is geraden en Q Music heeft hun lesje geleerd qua URLs

Het geluid is “een memorycard in een Playstation steken”, wat perfect klopt met de verborgen Tip 4 van gisteren (zie vorige post). Die wilden ze vandaag precies niet tonen en dus hebben ze er maar voor gekozen een andere tip te tonen:

Een tip die toch wel heel expliciet was. En waardoor de eerste beller er meteen op zat.

Dus wie weet, heeft deze blog meegedragen tot het veranderen van de tip en dus tot de winnen van het geld door een zekere Marc. Dus Marc, laat iets weten en ik stuur je wel m’n rekeningnummer ;-)

Oja, de url waar de tip achter zit is nu http://q-music.be/sites/2009.q-music.be/files/banners/images/R73TLB65f6t24Q7AK571b431fmXc9H29Ayy40DON_0.jpg

De URL valt dus niet meer te raden. Q Music (of toch hun webmaster) heeft z’n lesje geleerd.

4de verborgen tip van ‘Het Geluid’ op Q Music is “Spelen Maar!”

Bij het schrijven van deze post zit Q Music al aan 70.000€ bij het spelletje “Het Geluid”. Sinds maandag wordt er iedere dag één tip gegeven en dat maakt dat er vandaag (woensdag) al 3 tips gegeven zijn .

De tips staan bovenaan de website en komen om de 2 seconden voorbij. Met Firebug (plugin voor Firefox) kun je zien wat er allemaal gedownload wordt. Waaronder de links voor de eerste 3 tips:

Als we nu logisch nadenken, en de “3” van de laatste tip vervangen door een “4”, krijgen we dit:

Dit WERKT! Q Music heeft de vierde tip dus al online gezet!

De vierde tip van morgen (donderdag) is dus “Spelen Maar!”

UPDATE:

Ondertussen heeft Q Music dit opgemerkt en hebben ze hun afbeelding veranderd naar:

Best grappig eigenlijk. Blijkbaar is het forum op hun site ook onbereikbaar.

Ps: dit heeft niets met hacken te maken. Dit is gewoon het raden naar URL’s ;-)

De snelklikpromo van Eci.be

Sinds kort staat er op Eci.be een spelletje waarmee je korting kunt krijgen. Hoe sneller je klikt, hoe meer korting:

Dat moest ik toch even onderzoeken.

Na het spelen van een spel, krijg je een code toegestuurd in mail. Die kun je dan gebruiken tijdens de betaling op Eci.be Ik kreeg 3€ korting en mijn code was “snelklik3″. Omdat ik de 3 zag staan in de code, probeerde ik snel even snelklik100, maar dat bleek niet te lukken. Hoogstwaarschijnlijk zijn er maar een beperkt aantal code’s die lukken.

Tijd om even naar de achterliggende code te kijken:

Ok, als je meer dan 40 keer klikt, krijg je code[2]. Wat is code[2]?:

Ah, “snelklik7″ is code[2] !

En volgens de code komt snelklik7 overeen met 7,5€ korting! Dus je kunt maximum 7,5€ korting krijgen.

Dus, iedereen naar Eci.be en krijg 7,5€ korting met de code snelklik7 !

Sony AVCHD (.MTS) converteren naar DV (.AVI) gebruik makende van FFmpeg

Het probleem is hettvolgende: we willen met Adobe Premiere 6.5 werken, maar we hebben HD-materiaal: Sony AVCHD. Helaas kan Adobe Premiere 6.5 enkel werken met SD-materiaal.

We moeten dus die AVCHD (in een MTS container) converteren naar DV (in een Microsoft AVI container). We gebruiken hiervoor FFmpeg (wat gratis is).

Volgende commanline converteert MTS naar naar DV:

ffmpeg -i video.MTS -target pal-dv video.dv

Deze lijn rewrapped de DV naar een AVI container

ffmpeg -i video.dv -vcodec copy -vtag dvsd -acodec pcm_s16le -f avi -aspect 16:9 -y video.avi

Dit zou de 2 stappen in één moeten doen:

ffmpeg -i video.MTS -vcodec dvvideo -vf “format=yuv420p” -s 720×576  -b 204800 -vtag dvsd -acodec pcm_s16le -f avi -aspect 16:9 -y video.avi

Maar dat zag er niet zo goed uit als de 2 stappen afzonderlijk.

Iemand die een betere manier weet?

“Het Laatste Nieuws: Belgisch kampioenschap klikken” omzeild

Een maand terug kwam Het Laatste Nieuws af met het Belgisch kampioenschap klikken. Het kwam er op neer om zo vlug mogelijk te klikken.

We nemen even een kijkje achter de schermen van het spel. Het spel is geschreven in Flash/Actionscript. Deze zorgt het grafische gedeelte. Flash draait in de browser, dus de gebruiker is niet afhankelijk van de snelheid van de server. Hij is eerder afhankelijk van de snelheid van z’n eigen pc. Pas op het einde van het spel wordt dan ook de score naar de server gestuurd.

Het grappige aan de implementatie van dit spel, is dat ze de data via een standaard SOAP webservice doorsturen. Met een eenvoudige sniffer als Firebug, kan de SOAP-url teruggevonden worden:
http://klikken.hln.be/klikkenservice.asmx

We zien meteen de methode AddScore(int ScoreValue,  string HASH). Deze doet exact wat we denken dat ze doet. Ze geeft de score door. Uiteraard moet er eerst ingelogd worden, dit kan met de methode LoginUser(string Username, string Password). Dit geeft een object van het type UserInfo terug en deze kan dan gebruikt worden om de methode AddScore() op te roepen. De enige beveiliging die voorzien is de de HASH-waarde bij het toevoegen van de score. Hiervoor moeten we in de broncode van het Flash-spel duiken, met een swf-decompiler zien we hetvolgende:

De hash-waarde bestaat dus uit een concatenatie van de UserID, de score en de GUID.
De score kennen we. De UserID en de GUID zijn twee elementen die terug te vinden zijn in het UserInfo-object.

Het is dus een kwestie van een score te kiezen, in te loggen met LoginUser(), de hash te berekenen en de score naar de server te sturen met AddScore(). Verder zijn er geen beveiligingsmaatregelen zoals tijdscontrole, browsercontrole of dergelijke voorzien!

Andere methodes zoals GetLiveScores() kunnen gebruikt worden om een schatting te krijgen van het aantal spelers die per dag meegedaan hebben met het spel (= de schiftingsvraag die HLN vroeg).

Oja, SOAP webservices kan men heel eenvoudig toevoegen via .NET.. Een automatisatietool schrijven is dus een kwestie van minuten.

Videos van Schooltv.nl’s beeldbank downloaden

Helaas kan ik schooltvdownloader niet meer aanbieden.
Stichting NTR verbiedt mij om de tool nog langer aan te bieden omdat het in strijd is met hun voorwaarden.
Filmpjes mogen enkel gestreamd worden en niet gedownload worden. Technisch is er geen verschil tussen streamen en downloaden. Juridisch helaas wel.
Het was nooit mijn bedoeling om NTR te boycotten, maar om leerkrachten een mogelijkheid te geven om de filmpjes ook te gebruiken waar geen internetverbinding was.
Ik hoop dan ook dat NTR zelf iets onderneemt om het offline bekijken van filmpjes toe te laten.

Toch bedankt iedereen.. het was plezant.
Sam