Planète GCU

End of vacation

I spent 5 great days in Saint Petersburg this week!

This was my first visa and I was worried about the needed paperwork (insurance, hosting certificate, ...), and then the registration after arriving. Getting the visa was not easy as you need to go to the embassy on Monday, Tuesday or Thursday between 9:00 and 12:00 and spend some time there (queuing 3 times...). Then you can chose to get the visa as soon as it is ready (the same day) for 70 euros, or wait 7 days before picking it up and only pay 35 euros...

At the airport I was welcomed with huge queues for passport checks (I think I spent about 30 minutes there) and then by Ирнина which was better :)

Apart from usual buildings and museums (I admit I haven't visited some major ones), I visited a great bar/club on the first evening, which I enjoyed even if I had not slept the night before (We went there again the next day and it was much better :) ).

I can now pronounce most letters (not all) and often understand the word when it sounds like French or English (or other, like CYШИ for sushi) but reading letter by letter is so slow... And I can't manage to read anything hand written :(

I hope I'll have the opportunity to go there again!

Photos are already online!




Photo !

Apparemment je ne suis pas le seul à avoir remarqué que Google était en train de “streetmapper” la région parisienne.

Par contre moi j’ai fait une photo (avec le portable, désolé de la qualité pourrie). Elle a été prise ici. On ne voit pas le logo Google Streetmap sur la porte de la voiture, dommage.

Smiiiiiiiiiile !

Déjeuné tranquillou dans une rue à côté des champs élysées. Lorsqu'au loin, je vois une voiture bizarre, un poteau sur le toi et des bidules bizarres par dessus.
L'un des déménageurs qui voit cela balance un « Souriez, c'est Google ! » pour blaguer... manque de bol, c'était vraiment une voiture Google Maps qui scannait la rue.
Bon, et bien, je serais sur GoogleMaps bientôt ... (ou pas)

Welcome home

Un des trucs, sinon LE truc que je crevais d’envie de faire dans mon nouvel appart, c’était de monter un vrai hotspot, comme je l’expliquait deux news plus bas. Eh bah ça y est, c’est up. Je sais pas encore bien si j’en ferai un article ou si je donnerai des astuces au coup par coup, mais en attendant, voici à quoi ça ressemble.

Deux OpenWRT configurés en simples bridges permettent aux invités de se raccorder au VLAN dédié au wireless public :

/etc/config/wireless

config wifi-device  wifi0
        option type     atheros
        option disabled 0
        option mode             11b
        option distance         10000
        option diversity        0
        option txantenna        1
        option rxantenna        1
        option channel          6

config wifi-iface
        option device   wifi0
        option ifname   ath0
        option network  lan
        option mode     ap
        option ssid     Empire-Network
        option encryption none
        option txpower 18

/etc/config/network

config interface loopback
        option ifname   lo
        option proto    static
        option ipaddr   127.0.0.1
        option netmask  255.0.0.0

config interface lan
        option ifname   eth0 ath0
        option type     bridge
        option proto    static
        option ipaddr   192.168.200.253
        option netmask  255.255.255.0

Où un serveur dhcp leur fournira une IP dans le subnet adéquat. Un simple règle pf redirigera alors toute requète http vers un portail captif qui expliquera à l’invité quelles informations entrer dans son browser afin de pouvoir utiliser HTTP, HTTPS et FTP (notez que pour le moment un seul sur une bonne 30aine a reussi à effectuer cette opération heutement technique…). Quelques règles de QoS m’assurent que l’invité ne crame pas toute ma bande passante :

/etc/pf.conf

int="fxp0"

table <empire_guests> { 192.168.200.0/24, ! 192.168.200.254, ! 192.168.200.253, ! 192.168.200.252 }

altq on $int cbq bandwidth 28Mb queue { empirenet_in, empirenet_out }
queue empirenet_in bandwidth 2Mb priority 1 cbq(default)
queue empirenet_out bandwidth 128Kb priority 7

rdr on $int inet proto tcp from any to <empire_guests> port www -> 127.0.0.1 port 80

pass in on $int from any to <empire_guests> queue empirenet_in
pass out on $int from <empire_guests> to any queue empirenet_out

L’utilisateur passe alors via Squid et son activité est soumise au filtrage de squidGuard dans lequel j’ai interdit les catégories !aggressive !violence !hacking !ads !porn !warez !suspect.
J’applique sur le switch des access-list par port qui n’autorisent que les protocoles HTTP, SSH et DHCP.

[...]
ip access-list extended wifiout
 permit ip any host 192.168.200.254
 permit tcp any any eq http
 permit udp any any eq bootps
 permit tcp any any eq ssh
[...]
interface e 18
 ip access-group wifiout in
[...]

Le tout est graphé par Cacti, notemment grace à l’extension dhcpd-snmp de Net-SNMP et au template cacti associé.

Si vous passez dans le 17eme, cherchez le ssid “Empire-Network” :)

Why People Are Passionate About Perl

brian d foy asks why people are passionate about Perl. So, brian, here are a pumpking's answers to your questions.

The person who introduced me to Perl showed me that I could throw away all those fragile sed and awk scripts and get the job done much quickier. So that gets us to the second question:

I first starting using Perl to process very large data files. Or at least they were considered very large at the time: less than 2 Go, I think. But I quickly grasped the thing and began to wrote small scripts to automate various things on my computer (and others').

I kept using Perl because it was fun. And it still is.

I can't stop thinking about Perl because... they won't let me! If I stop thinking about Perl, I know they're out there to get me, lurking in the dark corners of the intarweb, with their bug reports, their suggestions and their patches.

I'm still using Perl because, well, basically, because I'm paid for it. But on the other hand, I chose a job where I was getting paid to use Perl. I could have chosen a Java, a C, or (my goodness) a PHP job. But with a proper Perl job you have the CPAN at hand, ready to be used. So you can concentrate with the problem solving and the business side of your applications, because almost all the libraries you'll need are already there.

I get other people to use Perl by hitting them on the head with a -- no wait. Actually that's the most interesting question. I get other people to use Perl by trying to make Perl a less annoying language, in my own scale.

I also program in C, but mostly when I have to patch perl itself -- the only place where you can't use Perl.

« Valve's "Source Engine" Coming To Linux »

« There have been rumors since last year that Valve may be serious about porting Source games to Linux after Valve Software began seeking a senior software engineer with the responsibility of porting Windows-based games to the Linux platform. Valve Software has yet to officially announce Linux clients for any of its software, but at Phoronix we have received information confirming that Valve is indeed porting its very popular Source engine to the Linux platform. »

fais tourner

http://www.laquadrature.net/
http://www.lexpansion.com/economie/actualite-high-tech/loi-sur-le-piratage-repression-a-tous-les-etages_152561.html

Vous connaissez proablement le sujet, mais quid de vos amis non avertis ? votre famille ? vos collègues de bureau ?

Faites tourner. Maintenant.

C'est pas la classe ?

C'est dans ces moments là qu'on voit les gens qui ont la classe: On vient de déménager nos locaux. Pour être précis: Vous tracez un trait entre le Hustler Club et le Pink Paradise, on se trouve au milieu .... à 10 numéros du dernier ...

Des nouvelles recrues pour le petit journal du pr0n ?


(Pardon maman ...)

Potiron-Man !

Après avoir zieuté pendant des mois les fichiers DPX d'IronMan sur le SAN d'Eclair Lab, j'ai quand même eu envie d'aller voir ce film.


Pour l'histoire, cela se révèle assez simple (quoique): « Tony Stark, génial concepteur, inventeur et playboy est le PDG de Stark Industries. La société est le principal fournisseur d'arme en tout genre pour US-Army.

Lors d'une présentation pour ces derniers des derniers produits Stark Industries en Afghanistan, il se retrouve prisonnier par des méchants pas beau (aka des mAIchants terroristes). Durant l'attaque pour sa capture, il recevra des éclats d'une bombe. A son réveil, Il s'aperçoit que l'un des prisonniers lui a implanté un bidule électromagnétique dans le thorax pour éviter que les éclats ne pénêtre dans son coeur et ne le tue. Les mAIchants terroristes lui demandent de concevoir une arme dans leur QG. Stark utilisera les outils à sa disposition pour construire une armure pour s'échapper.


A son retour aux Etats-Unis, il décide de faire fermer sa division Armement. Il décide entre temps de concevoir une nouvelle armure, un nouvel exosquelette: Le Mark 2....
»

Franchement, j'ai bien aimé, c'est même trop court.
Passons les références pro-américaines, qui me semble, après coup, plutôt une petite pique indirect (Stark Industries vendant des armes "pour la protection des boys de l'armée", mais s'aperçoit que cela ne sert qu'à tuer des gens innocents) ainsi que les deux ou trois séquences un peu conne (notamment le moment où Iron Man sauve un pilote qui tentait de le dézinguer)

Au niveau des effets spéciaux, c'est franchement du grand. Il faut dire que c'est ILM (Industrial Lights & Magic: Starwars, Jurassic Park, ...) qui s'est chargé de cela. Même Transformer à côté fait petit joueur. Le soucis du détail sur l'exosquelette est proche de la perfection. La seule (petite) imperfection se trouve lors du compositing entre le visage de l'acteur, Robert Downey Jr. et l'exosquelette, mais c'est tellement imperceptible ...

Le scénario ne se prend pas au sérieux. Le réalisateur, Jon Favreau, venant de la comédie, nous avons donc par moment des grands moments d'(auto-)dérision (surtout lorsque Tony Stark teste des parties de sa combinaison ... c'est tout juste hilarant)

Robert Downey Jr. est parfaitement dans le rôle: Playboy, hautain et cynique. Il change au fur-et-à-mesure du temps (surtout après son passage "captif"). Mais le meilleur, c'est quand même Jeff Bridges (Tron, The Big Lebowsky) qui est complètement métamorphosé: chauve et avec une barbe. Je l'ai pas reconnu dès le début. Il incarne parfaitement le co-PDG de Stark Industries ... et méchant de l'histoire.

Attention: Restez jusqu'à la fin du film ! y'a une séquence cachée ... avec un acteur très connu.

Bref, si vous aimez le cinéma pop-corn, c'est du bon, mangez ma bonne germaine !

Depuis la nouvelle infrastructure mutualisée

Certes je m’avance un petit peu, mais ce message me sert surtout de test pour la future architecture PlexiWeb …

C’est beau … magnifique même!

Remplacer le bip/beep (bell) système

Bip, bip, bip... «C'était mon PC ?», «Non, c'est moi» , «Ah zut !». Un grand classique du bureau où plusieurs machines fonctionnent et signalent toutes sortes de choses avec le ridicule haut-parleur connecté à la carte mère. Comment intercepter ce signal et jouer un son sur le périphérique audio en lieu et place quand le pilote ALSA ne supporte PC Speaker ? La réponse c'est xbelld !

(more...)

Tip of the day: tar is now smart

As toady pointed out on IRC, you no longer need to tell tar that it needs to uncompress an archive with gzip or bzip2. So, instead of calling tar xzf on tar.gz archives and tar xjf on tar.bz2 ones, you can now call tar xf on both.

Update: To answer Beranger, this was introduced by tar 1.15 on 2004-12-29, and should be available in all recent distributions (According to Distrowatch: Mandriva since 10.2, Debian since Etch, Ubuntu since 5.10, Fedora since FC4).

Bash and horizontal-scroll-mode

On my machines (Mandriva cooker, bash 3.2+upstream patches, readline 5.2+upstream patches) bash now displays the long command lines on a single line and handles scrolling.

This means I can't read all the command line without scrolling, and I can't copy it...

After some search on this topic I found a readline option called horizontal-scroll-mode which exactly does this, but is off by default (at least according to the doc).

Our packages changelog does not say anything about it and grep "horiz" in the patches or the config files does not return anything related. The upstream changelog of readline and bash also does not say anything about it...

Worse, I tried "set horizontal-scroll-mode off" in .inputrc and then in /etc/inputrc, without any effect...

Any idea on how to fix this ?

Je te casse et tu ne peux rien y faire

Je viens de découvrir une option assez sympathique qui se trouve, je crois, dans les S60 (vérifié sur un nokia e61i et un e65). Il est possible de bloquer son téléphone à distance grâce à un SMS en cas de perte. L'option se configure dans menu > Outils > Paramètres > Sécurité > Téléphone et carte SIM > Autoriser verrouillage distant. A partir de là, on définit un message qui, lorsque reçu par SMS, va provoquer le bloquage du téléphone. Un autre code, à taper sur le téléphone, permet de le déverouiller. Plutôt cool je trouve. e61i SMS lock

NAT sur Foundry ServerIron

Ça faisait un petit moment que j’avais envie de monter une vraie infrastructure Wireless publique. Un vrai truc quoi, avec tout ce que ça suppose, VLAN, proxy filtrant, QoS, logging, monitoring… et il se trouve qu’il a un moment de cela, j’ai fait l’aquisition de ce genre de bestiau.

Bien qu’il existe une doc officielle, on ne trouve pas autant de posts, exemples, HOWTOs et autres tutoriaux qu’on a l’habitude de trouver dans le monde du bien. Je vous propose un petit topo sur l’art et la manière de réaliser un simple NAT avec ce switch.

On déclare tout d’abord deux des VLANs, par port, qui constitueront notre réseau :

vlan 2 name LAN by port
 untagged ethe 2 to 8
 no spanning-tree
  router-interface ve 1

vlan 3 name WAN by port
 untagged ethe 1
 no spanning-tree
  router-interface ve 2

Les ports spécifiés ne seront pas taggés, et nous ne souhaitons pas utiliser de STP.

On place ensuite une access-list représentant le réseau qui aura le droit d’être NATté :

access-list 10 permit 192.168.1.0/24

Un point clé, on définit deux interface virtuelles de type ve, qui serviront d’interfaces de routage pour ces deux réseaux :

interface ve 1
 ip address 192.168.1.254 255.255.255.0
!
interface ve 2
 ip address 212.10.20.30 255.255.255.0

212.10.20.30 représente notre IP publique.

Enfin, on configure le NAT à propremement dit :

ip nat inside
ip nat inside source list 10 pool NAT1 overload
ip nat pool NAT1 212.10.20.30 212.10.20.30 prefix-len 24

La conf est assez explicite, mais pour tout eclaircissement, rendez-vous sur la doc officielle.

update

ah-ah-ah. Alors. J’vais baver. Donc hier, à peu près à l’heure ou je postais ce billet, le bestiau arrête de natter. Comme ça. Evidemment, rien changé, rien débranché, juste, il s’arrete de natter.
Je reload, je cold restart, j’enlève / remet les rules de nat, je downgrade, j’upgrade. Rien-a-faire. Cette merde refuse de natter. Evidemment, matos propriétaire, brosse toi pour debugger. En tout cas, la conf sus-citée n’a fonctionné que pendant quelques heures. Si jamais j’en viens à bout, jvous tiendrai au jus, mais dans l’immediat :

nat on $ext from 192.168.1.0/24 to any -> $ext

Ça, ça juste marche.

update

En remplaçant :

interface ve 2
 ip address 212.10.20.30 255.255.255.0

par

interface ve 2
 ip nat-address 212.10.20.30 255.255.255.0

Ou :

The nat-address parameter applies to active-standby configurations. This parameter configures a shared IP interface for use with SLB source NAT. Enter the same command with the same IP address on each of the SIs in the active-standby configuration. The address is active only on one SI (the SI that is currently active) at a time.

Rien à voir avec le schmillblick donc.

Tout vient de se remettre à fonctionner. Reste à savoir pour combien de temps…

update

Après avoir débranché puis rebranché le lien WAN, même symptome que précedemment. Fin de l’histoire, j’ai collé une vieille Netra X1 sous OpenBSD comme gateway, pf ne perd pas les sessions, lui.

Un délai comme l’humanité n’en avait pas connu depuis…

Imaginons le scénario suivant :


- Bonjour, Pizza Free’30, que puis-je faire pour vous ?
- Bonjour madame, j’aimerais commander une Spicy-chaude
- Bien sur monsieur, il vous en coutera 29€90
- Super, je peux espérer être livré quand ?
- À titre indicatif, la livraison aura lieu dans 15 à 30mn
- Génial, merci beaucoup
- Je me joins à toute l’équipe de Free’30 pour vous souhaiter une bonne soirée

40mn plus tard


- Oui bonjour, j’ai commandé une Spicy-chaude il y a 40mn mais je n’ai toujours aucune nouvelle de votre part, est-ce normal ?
- Ah ? laissez moi regarder
- Merci j’attend

- Monsieur ? je viens de m’enquerir auprès de notre service Pizzaïolo, en fait il se trouve que nous n’avons plus de place dans notre four
- Hmm, oui… et donc ?
- Il va falloir patienter encore quelques minutes monsieur, mais je ne saurais vous dire combien de temps
- Ah, c’est super ça…
- Oui nous sommes navrés monsieur, mais le four appartient à France’30, et nous ne controllons pas ce qui s’y passe
- Mouais ok… bon bah je vais patienter quoi…
- Voila, une autre question monsieur ?
- Bah nan… merci.
- Je me joins à toute l’équipe de Free’30 pour vous souhaiter une bonne soirée
- mouais.

1h20 plus tard


- Oui bonjour, j’ai commandé une Spicy-chaude il y a 1h20 et je n’ai toujours aucune nouvelle de votre part. Je suis au courant de vos histoires de four monopolisés par France’30, mais je commence à serieusement avoir faim.
- Ah oui, oui je vois sur mon logiciel que le four est toujours occuppé par France’30… il va falloir patienter monsieur…
- Oui, alors c’est à dire qu’à un moment donné je vais prendre ma pizza chez 9′30 quoi, parce voyez vous, il est 21h20 et j’ai faim.
- Je comprend monsieur, mais il faut patienter que le four se libère
- Ouais ok. Merci au revoir
- Je me joins à toute l’équipe de Free’30 pour vous souhaiter une bonne soirée
- ouais, tcho.

[quelques mails et coups de téléphone plus tard]

2h40 plus tard

- Oui bonjour, j’ai commandé une Spicy-chaude il y a pratiquement 3 heures, et j’en ai vraiment marre là.
- Ah, oui, oui oui effectivement, je vois que votre pizza est sur la file d’attente, mais le pizzaïolo de France’30 ne l’a pas encore enfournée, mais je vous rassure, cette étape là ne dure généralement que quelques minutes
- Quelques minutes ?? mais j’ai commandé ma pizza il y a 2h40 !
- Oui désolé monsieur, mais la cuisson de votre pizza ne dépend pas de nous. Avez-vous une autre question ?
- Nan.
- Je me joins à toute l’équipe de Free’30 pour vous souhaiter une bonne soirée
- …

5ème semaine d’attente et pas l’ombre d’un lien. À Paris attention hein, pas à Pwetpwet-sur-Yonne. 5 semaines and counting. Je pense pas que j’aurais attendu ma pizza plus d’1h, et de plus, on me l’aurait remboursée, au pire, on m’aurait filé un bon d’achat. Mais là non, tu vas juste te faire foutre en silence et t’attend ton tour.

Update

Eh bah voila, il suffisait d’en parler pour que ça se débloque :

Sending 1, 16-byte ICMP Echo to 88.181.26.254, timeout 5000 msec, TTL 64
Type Control-c to abort
Reply from 88.181.26.254   : bytes=16 time=31ms TTL=64
Success rate is 100 percent (1/1), round-trip min/avg/max=31/31/31 ms.

Taiwan photos uploaded

At last, I finished uploading the photos of the 3 weeks I spent in Taiwan in February! I had taken more than 1000 photos (Meaning I had more than 1024 files in a directory and libgphoto2 did not want to import them), so after a difficult triaging I uploaded a set of 512 photos, and then for people in a hurry, a subset of 100 photos.




Les murs sont bien.

Les murs sont en places, il ne me reste plus qu’a m’occuper des formulaires.
Le blog est maintenant propulsé par Wordpress 2.5, qui contrairement à la version 2.3 semble fonctionner correctement sur l’hébergement mutualisé PlexiWeb.

Surement plus d’informations plus tard.

On pousse les murs

Ce soir bob, je change un petit peu tout.

Rendez vous dans quelques heures …

La nouvelle ubuntu est sortie

Et j’en ai de plus en plus rien à faire … Passez donc à debian braves gens !