Giro in bici sulla riva della martesana

Magnifica giornata oggi per un giretto in bici. Percorso breve ma piacevole (cotone milanese a parte). Armato della mia vecchia nuzzi, ho fatto questo:

Giro Martesana 2011-04-25

 

Primo giretto a milano in bici!

Grazie a Daniele, che mi ha portato la bici fino a casa, oggi ho potuto fare il primo giro/test.

Ovviamente, ho sperimentato il percorso per arrivare a lavoro. Altrettanto ovviamente, ho sbagliato strada un paio di volte e sono stato costretto a vedermela con mille piccoli dettagli sulle strade enormi di milano.

Alla fine, tutto compreso, ho impiegato 14 minuti circa…niente male, rispetto agli oltre 40 necessari con i mezzi pubblici :)

Percorso da casa a lavoro, in bici

 

Buona notte

image

Casetta casetta, un saluto prima di andarea dormireeeeee.

 

Up&Running – Again

Dall’acquisto del server nuovo passato un sacco di tempo, moltissimi eventi mi hanno ulteriormente allontanato da esso…non per ultima, la “vaga” non-voglia di rimettermi a configurare mille cose.

…poi, inaspettatamente, ieri morto il server vecchio (e dire che l’avevo vantata da Gianfranco e Chiara, quella incredibile durata…).

In una notte di lavoro ho rimesso in funzione miracolosamente TUTTO…7 VM, ognuna con un compito quanto piu’ specifico possibile, tutte con ArchLinux (il mio ultimo amore).

Ho colto l’occasione per sistemare il sistema voip (dopo il passaggio alla Voice VLAN avvenuto ad ottobre circa).

Adesso asterisk sfrutta mysql (Asterisk Realtime) per buona parte della configurazione “dinamica” (peering, dialplan), i telefoni Cisco hanno il mio nuovo loghetto :P .

…si, decisamente non un post “dal cuore romantico” :)

 

Iniziano gli esperimenti con Xen

Finalmente, dopo qualche perplessit?, ieri ho montato il nuovo “futuro” serverino di casa. Hw di tutto rispetto:

  • Processore Intel Core 2 Quad Q6600 (VT)
  • 8Gb di Ram
  • 2×160 Gb Maxtor HDD (questi avevo…)
  • MoBo Asus P5K/EPU

Ieri ho installato Xen Server 5.5 ed ora sono alle prese con la prima guest machine (archlinux), cui poi verranno affiancate altre 8 macchine…bello sforzo !

Vediamo come va a finire :)

 

Buon Natale 2009

HappyHolydays

Buon Natale a tutti!

P.S.: L’immagine non mia, l’ho presa dal blog di Marco Rizzi

 

VLAN Linux Trunking

Oggi ho deciso di sperimentare linux come vlan router, collegando una scheda di rete ad una trunking port di un Catalyst 2950. L’esperimento ha dato ottimi frutti, permettendomi di pensare a modi interessanti per implementare sicurezza L2 nella mia rete casalinga.

Linux Kernel & Software

Dal punto di vista di linux, importante aver caricato il modulo 8021q mediante il solito comando


modprobe 8021q

In questo modo, la nostra interfaccia sar? in grado di trattare i 4 bytes in eccesso dell’incapsulazione IEEE 802.1Q. Il secondo passo consiste nell’installare la suite iproute2 e vconfig. La prima l’interfaccia “sostitutiva” di ifconfig allo stack ip di linux, mentre il secondo un programma che permette di gestire le vlan configurate.

Per permettere il routing, inoltre necessario permettere il packet forwarding con il comando


echo 1 > /proc/sys/net/ipv4/conf/all/forwarding

Linux Configuration

Nel mio caso, la eth0 connessa alla trunk port del Catalyst, su di lei andranno configurate le subinterfaces. La eth0 non dovr? avere alcun ip. Da essa verranno derivate le subinterfaces che gestiranno le vlans. Ipotizziamo di creare le vlan 2,3,4 (la vlan 1 presente di default in ogni switch).


[root@quasher ashura]# vconfig add eth0 2
Added VLAN with VID == 2 to IF -:eth0:-
[root@quasher ashura]# vconfig add eth0 3
Added VLAN with VID == 3 to IF -:eth0:-
[root@quasher ashura]# vconfig add eth0 4
Added VLAN with VID == 4 to IF -:eth0:-

A questo punto avremo la possibilit? di vedere le nuove interfacce:


2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:1f:c6:00:00:fe brd ff:ff:ff:ff:ff:ff
4: eth0.2@eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN link/ether 00:1f:c6:00:00:fe brd ff:ff:ff:ff:ff:ff
5: eth0.3@eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN link/ether 00:1f:c6:00:00:fe brd ff:ff:ff:ff:ff:ff
6: eth0.4@eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN link/ether 00:1f:c6:00:00:fe brd ff:ff:ff:ff:ff:ff

Tutte quante le interfacce virtuali sono DOWN, attiviamole e diamo loro degli ip:


[root@quasher ashura]# ip addr add 192.168.4.1/29 dev eth0.2
[root@quasher ashura]# ip addr add 192.168.4.9/29 dev eth0.3
[root@quasher ashura]# ip addr add 192.168.4.17/29 dev eth0.4


[root@quasher ashura]# ip link set eth0.2 up
[root@quasher ashura]# ip link set eth0.3 up
[root@quasher ashura]# ip link set eth0.4 up

Adesso abbiamo le nostre interfacce up e con ip delle relative subnets.

Cisco Catalyst configuration

Sullo switch sufficiente mettere la porta connessa a linux in trunking, definire le vlans ed eventuale security, configurare le access ports in portfast ed appartenenti alle relative vlans.

Non ho il supporto a ISL, ma non credo che sia implementato in linux, quindi converrebbe sempre utilizzare


encapsulation dot1q

nella trunking interface dello switch.

 

Cisco IP Phone 7940 con Asterisk

Nuova aquisizione in casa: due splendenti telefoni voip cisco 7940 che andranno ad aumentare il mio desiderio di voip domestico integrato :D

Appena arrivati, la domanda stata ovvia: come farli andare? Un rapido giro al sito cisco, seguito da uno su google e sono riuscito ad arrivare ad una soluzione.

Fase 1: Firmware

I telefoni Cisco 7940 possono operare in due modalit?: SCCP (o Skinny protocol) nel caso figli di CUCM o SIP nel caso di altri centralini. Innanzitutto bisogna prendere il Firmware adeguato per il telefono (serve l’abbonamento Cisco Smart Net o simili).

L’archivio comprender?:? (solo i files per noi vitali)

  • P0S3-8-12-00.loads
  • P0S3-8-12-00.sb2
  • P003-8-12-00.bin
  • P003-8-12-00.sbn
  • OS79XX.TXT

Nel mio caso, ho dovuto usare il firmware P0S, ossia quello per il protocollo SIP (P00 Skinny).

Fase 2: Server DHCP

Questa fase piuttosto semplice, dato che gi? utilizzo ISC Dhcpd per l’autoconfigurazione di tutto quello che posso attaccare alla mia rete. Nel caso specifico, bisogna aggiungere le voci necessarie a far riconoscere ai telefoni l’indirizzo del server TFTP da usare per il provisioning di firmware e configurazione (nel mio caso, 10.0.1.1).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
option option-150  code 150 = ip-address;
 
subnet 10.0.1.0 netmask 255.255.255.0 {
    option ntp-servers time.ien.it;
    option subnet-mask 255.255.255.0;
    option routers 10.0.1.1;
    option broadcast-address 10.0.1.255;
    option domain-name-servers 10.0.1.1;
    option ip-forwarding off;
    default-lease-time 86400;
    max-lease-time 86400;
    deny unknown-clients;
 
    next-server 10.0.1.1;
 
    range dynamic-bootp 10.0.1.1 10.0.1.254;
 
    host phone01 {
        hardware ethernet 00:AA:AA:AA:AA:AA;
        fixed-address 10.0.1.2;
    }
 
    host phone02 {
        hardware ethernet 00:AA:AA:AA:AA:AA;
        fixed-address 10.0.1.3;
    }
 
    host phone03 {
        hardware ethernet 00:AA:AA:AA:AA:AA;
        fixed-address 10.0.1.4;
    }
 
    host cisco7940-1 {
        hardware ethernet 00:AA:AA:AA:AA:AA;
        fixed-address 10.0.1.5;
    }
 
    host cisco7940-2 {
        hardware ethernet 00:AA:AA:AA:AA:AA;
        fixed-address 10.0.1.6;
    }
}

Fase 3: Server TFTP

Anche in questo caso, mi andata piuttosto bene, dato che gi? me lo trovo pronto e configurato per il backup della mia roba cisco. Nella fattispecie, ho configurato tftpd-hpa per esporre /var/tftpboot.

Qualunque sia la directory esposta, dovremmo copiarvi all’interno i files estratti dall’archivio del firmware e dovremmo aggiungervi anche i files di provisioning della configurazione:

  • SIPDefault.cnf (configurazione di default per i telefoni non specificati)
  • SIPMACADDRESS.cnf (per ogni telefono da configurare, sostituendo MACADDRESS con il mac del proprio telefono, senza separatore)

Il contenuto di SIPDefault.cnf (case sensitive, su linux…) il seguente

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
image_version: P0S3-8-12-00
proxy1_address: "10.0.1.1"            ; Can be dotted IP or FQDN
proxy2_address: ""              ; Can be dotted IP or FQDN
proxy3_address: ""              ; Can be dotted IP or FQDN
proxy4_address: ""              ; Can be dotted IP or FQDN
proxy5_address: ""              ; Can be dotted IP or FQDN
proxy6_address: ""              ; Can be dotted IP or FQDN
proxy_register: 1
messages_uri:   "1"
phone_password: "cisco" ; Limited to 31 characters (Default - cisco)
sntp_mode: unicast
sntp_server: "time.ien.it"
time_zone: "GMT" ; assuming you're in GMT
time_format_24hr: 1 ; to show the time in 24hour format
date_format: "Y/M/D"  ; format you would like the date in
dial_template: dialplan

In generale, qui basta modificare l’indirizzo dei vari proxy utilizzabili.

Contenuto di SIPMACADDRESS.cnf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# SIP Configuration Generic File (start)
 
# Proxy Server
proxy1_address: "10.0.1.1"
proxy2_address: "10.0.1.1"
proxy3_address: "10.0.0.129"
proxy4_address: "10.0.0.1"
proxy5_address: "10.0.0.1"
proxy6_address: "10.0.0.1"
 
# Line 1 Settings
line1_name: "1007"                     ; Line 1 Extension\User ID
line1_displayname: "1007"           ; Line 1 Display Name
line1_authname: "1007"         ; Line 1 Registration Authentication
line1_password: "password"         ; Line 1 Registration Password
 
# Line 2 Settings
line2_name: "1008"                          ; Line 2 Extension\User ID
line2_displayname: "1008"                   ; Line 2 Display Name
line2_authname: "1008"         ; Line 2 Registration Authentication
line2_password: "password"         ; Line 2 Registration Password
 
# Emergency Proxy info
proxy_emergency: ""
proxy_emergency_port: "5060"
 
# Backup Proxy info
proxy_backup: ""
proxy_backup_port: "5060"
 
# Outbound Proxy info
outbound_proxy: ""
outbound_proxy_port: "5060"
 
# NAT/Firewall Traversal
nat_enable: "1"
nat_address: ""
voip_control_port: "5060"
start_media_port: "16384"
end_media_port:  "32766"
nat_received_processing: "1"
 
# Phone Label (Text desired to be displayed in upper right corner)
phone_label: "Ash-terisk 2"            ; Has no effect on SIP messaging
 
#preferred_codec: "g711alaw"
 
# Time Zone phone will reside in
time_zone: "GMT"
 
# Telnet Level (enable or disable the ability to telnet into this phone
telnet_level: "1"      ; 0-Disabled (default), 1-Enabled, 2-Privileged
 
# Phone prompt/password for telnet/console session
phone_prompt: "Go Away"                              ; Telnet/Console Prompt
phone_password: "baco"                          ; Telnet/Console Password
 
# Enable_VAD (1-enabled, 0-disabled)
enable_vad: "0"
 
# Network Media Type (auto, full100, full10, half100, half10)
network_media_type: "auto"
user_info: phone
# URL for external Directory location
logo_url: "http://10.0.1.1/asterisk-tux.bmp"                    ; URL for branding logo to be used on phone display
 
# SIP Configuration Generic File (stop)

Questo conterr? attualmente TUTTA la reale configurazione offerta ai telefoni ed andr? modificata in accordo a quella che la nostra configurazione su asterisk.

 

Oh Mr Chuuuck

Rapidissimo passaggio solo per…?Oh Mr Chuuuck <—- YEAH!

In formato suoneria, leggerissimo!

Non potr? fare il pilota di caccia!!!

 

Linked!

Da oggi sono anche su Linkedin!

 
 
 
 

Switch to our mobile site