Bueno, ya nos vamos centrando en cada una de las distintas posibilidades que nos ofrece el IR. Queridos usuarios de Palm, welcome a la octava maravilla.
En un anterior documento escrito por este pobre pringao "Interconexion de Palm con Linux/FreeBSD"
También se encuentra en http://www.undersec.comvimos que era posible sincronizar la Palm con el crandle (como ya lo hacia win) y también cómo establecer una conexión ppp con la Palm para que esta pudiera conectar directamente con Internet a través de nuestro Linux o FreeBSD (esto para win, ejem, programita de turno, véase Mochappp). Bien, ahora vamos a dar un paso mas y vamos a realizar exactamente lo mismo pero sin usar el crandle. Todo gracias a nuestro querido IRDA. ¿Coste? cero euros. XD.
Empezamos.
Lo primero, asegurarnos de que tenemos todo lo necesario.
Vamos a buscar el paquete pilot-link (0.9.5 creo que es el que uso). La instalación del paquete nos va a facilitar una barbaridad de utilidades mas que interesantes. No me voy a detener comentando cada una porque no es nuestro caso. La principal para sincronizar es el pilot-xfer.
Ahora procedemos a preparar el sistema. Por supuesto, esto solo es laborioso la primera vez. Una vez realizados todos los cambios, tanto ahora como anteriormente, se pueden dejar definitivos y ya no tener que realizar cada vez la misma operación. Ver los rc.local etc etc de cada distribución.
Creamos un enlace simbólico desde /dev/pilot a nuestro dispositivo de IR. O sea, el /dev/ircomm0.
annapurna:~# ls -al /dev/pilot lrwxrwxrwx 1 root root 12 Oct 16 16:35 /dev/pilot -> /dev/ircomm0
Recalcar que el /dev/ircomm0 va a ser nuestro dispositivo de IR en todo
momento.
Es recomendable añadir la variable del sistema PILOTRATE que nos permite aumentar
la velocidad de sincronización de 9600 hasta los 115200:
export PILOTRATE=115200
Es solo útil de cara a las pilot-link, no sirve de nada para el resto de herramientas (gsm-utils etc).
Creamos un directorio, o cogemos el directorio donde tenemos los prc para Palm, bueno, o lo que sea y le damos al pilot-xfer.
Por ejemplo:
annapurna:~# pilot-xfer -s Port: /dev/pilot Please press the HotSync button now...
Ahora nos vamos a la Palm, la enfocamos hacia el IR. Buscamos en la Palm el HostSync. Elegimos "Local" y cambiamos lo de "Serie Directa" a "IR a PC/Portatil". Pulsamos sobre el icono de las flechitas (el de siempre) y ale...a funcionar:
annapurna:~/palm/test# pilot-xfer -s . Port: /dev/pilot Please press the HotSync button now... Connected... Backing up './AvGoPref.pdb'... OK Backing up './AvGoVersion.pdb'... OK Backing up './TSheetCat-IAMBIC.pdb'... OK Backing up './AvGoChanMQ.pdb'... OK Backing up './BlockParty Prefs.pdb'... OK [...]
Es curioso comprobar toda la negociación a nivel de IrLAP.
Al principio, cuando acercamos la Palm al IR del portátil, es posible que la Palm nos anuncie un mensaje por pantalla que ponga: "Esperando al remitente..." El mensaje es consecuencia de los mensajes de difusión del IR del portátil para ver si detecta el dispositivo. La palm los detecta y contesta, pero el IR del portátil sigue con sus difusiones. Existe en el APENDICE A una explicación detallada sobre el trafico de IR. En el siguiente ejemplo no me paro pues a explicar los detalles del trafico IR. El Ejemplo:
annapurna:~# irdadump -x IR del PC: 08:19:46.801086 xid:cmd d8a82a1b > ffffffff S=6 s=1 (14) ff3f011b2aa8d8ffffffff010100 . ? . . * . . . . . . . . . 08:19:46.891093 xid:cmd d8a82a1b > ffffffff S=6 s=2 (14) ff3f011b2aa8d8ffffffff010200 . ? . . * . . . . . . . . . 08:19:46.981084 xid:cmd d8a82a1b > ffffffff S=6 s=3 (14) ff3f011b2aa8d8ffffffff010300 . ? . . * . . . . . . . . . 08:19:47.071089 xid:cmd d8a82a1b > ffffffff S=6 s=4 (14) ff3f011b2aa8d8ffffffff010400 . ? . . * . . . . . . . . . 08:19:47.161086 xid:cmd d8a82a1b > ffffffff S=6 s=5 (14) ff3f011b2aa8d8ffffffff010500 . ? . . * . . . . . . . . . 08:19:47.251084 xid:cmd d8a82a1b > ffffffff S=6 s=* annapurna hint=0400 [ Computer ] (25) ff3f011b2aa8d8ffffffff01ff000400616e6e617075726e61 . ? . . * . . . . . . . . . . . a n n a p u r n a
Lo recibe la Palm y contesta y en el paquete nos anuncia el protocolo que entiende:
08:19:48.147739 xid:rsp d8a82a1b < 7e56dd54 S=6 s=4 quasar hint=8220 [ PDA/Palmtop IrOBEX ] (23) febf0154dd567e1b2aa8d8010400822000717561736172 . . . T . V ~ . * . . . . . . . q u a s a r
El "q u a s a r" que se lee en el cuerpo es el nombre que se le puso a la Palm. Como veis, la Palm ya nos anuncia que trabaja con IrOBEX (vease explicaciones dadas en el apartado anterior sobre IrOBEX). Lo que ocurre es que sobre el IR del PC no hay ninguna implementacion que interprete IrOBEX. Es un paquete externo que no he instalado aún. Por lo que no hace ni caso y sigue enviando avisos.
Otra cosa curiosa es ver la direccion de respuesta de la Palm (7e56dd54) Vamos a ver si es real....
annapurna:~/palm/test# irdaping 0x7e56dd54 IrDA ping (0xfa300b5a): 32 bytes 32 bytes from 0x7e56dd54: irda_seq=0 time=103.98 ms. 32 bytes from 0x7e56dd54: irda_seq=1 time=103.94 ms. 32 bytes from 0x7e56dd54: irda_seq=2 time=103.89 ms. 32 bytes from 0x7e56dd54: irda_seq=3 time=104.06 ms. 4 packets received by filter
El tema de irdaping no es mas que un paquete test. Vease APENDICE A. El tema está en que he descubierto que las direcciones varían cada vez. No se ahora mismo muy bien por qué. Si existe algun problema o quereis descubrir cuantos dispositivos están a la escucha basta con:
annapurna:~/palm/test# irdaping 0xffffffff IrDA ping (0xffffffff): 32 bytes 32 bytes from 0xfa300b5a: irda_seq=0 time=107.92 ms. 32 bytes from 0xfa300b5a: irda_seq=1 time=107.85 ms. 32 bytes from 0xfa300b5a: irda_seq=2 time=107.83 ms. 32 bytes from 0xfa300b5a: irda_seq=3 time=107.79 ms. 4 packets received by filter
Veis? ha variado. El caso es que esa direccion sigue siendo la de la Palm. Aunque me da en la vena que igual es la del IR de nuestro potatil, no lo se.
Bueno, ahora ponemos el programa en marcha. Atención a la nueva solicitud de difusión:
08:19:52.711102 xid:cmd d8a82a1b > ffffffff S=6 s=0 (14) ff3f011b2aa8d8ffffffff010000 . ? . . * . . . . . . . . . 08:19:52.801087 xid:cmd d8a82a1b > ffffffff S=6 s=1 (14) ff3f011b2aa8d8ffffffff010100 . ? . . * . . . . . . . . . 08:19:52.891089 xid:cmd d8a82a1b > ffffffff S=6 s=2 (14) ff3f011b2aa8d8ffffffff010200 . ? . . * . . . . . . . . . 08:19:52.981084 xid:cmd d8a82a1b > ffffffff S=6 s=3 (14) ff3f011b2aa8d8ffffffff010300 . ? . . * . . . . . . . . . 08:19:53.071088 xid:cmd d8a82a1b > ffffffff S=6 s=4 (14) ff3f011b2aa8d8ffffffff010400 . ? . . * . . . . . . . . . 08:19:53.161085 xid:cmd d8a82a1b > ffffffff S=6 s=5 (14) ff3f011b2aa8d8ffffffff010500 . ? . . * . . . . . . . . . 08:19:53.251089 xid:cmd d8a82a1b > ffffffff S=6 s=* annapurna hint=8404 [ Computer IrCOMM ] (26) ff3f011b2aa8d8ffffffff01ff00840400616e6e617075726e61 . ? . . * . . . . . . . . . . . . a n n a p u r n a
Ahora anunciamos nosotros el protocolo de negociación, algo en plan:
"...Para los que estáis por ahí escuchando: uso IrCOMM!.."
Lógicamente la Palm, que es la leche de lista, nos contesta:
08:19:54.057961 xid:rsp d8a82a1b < dd0fcf21 S=6 s=3 IrCOMM hint=8204 [ PDA/Palmtop IrCOMM ] (23) febf0121cf0fdd1b2aa8d80103008204004972434f4d4d . . . ! . . . . * . . . . . . . . I r C O M M
Ole....nuestro IR envía petición de conexión que es contestada en un plis por la Palm:
08:19:56.266869 snrm:cmd ca=fe pf=1 d8a82a1b > dd0fcf21 new-ca=e8 (33) ff931b2aa8d821cf0fdde80102fe0182010183013f84017f8501ff8601070801 . . . * . . ! . . . . . . . . . . . . . ? . . . . . . . . . . . 08:19:56.402451 ua:rsp ca=e8 pf=1 d8a82a1b < dd0fcf21 (31) e87321cf0fdd1b2aa8d801013e82010183010f840101850108860107080107 . s ! . . . . * . . . . > . . . . . . . . . . . . . . . . . .
Ahora para confirmar conexión y por control de estado, etc..., se envía:
08:19:56.402519 rr:cmd > ca=e8 pf=1 nr=0 (2) e911 . . 08:19:56.409062 rr:rsp < ca=e8 pf=1 nr=0 (2) e811
Estos paquetes los veremos multitud de veces, los utiliza para ver si aún está vigente la conexión etc etc....
Como veis, las respuestas de la Palm son inmediatas. Una vez confirmada la conexión y que todo va bien, comienza la negociación:
08:19:56.409080 i:cmd > ca=e8 pf=1 nr=0 ns=0 LM slsap=12 dlsap=00 CONN_CMD (6) e91080120100 . . . . . . 08:19:56.416553 i:rsp < ca=e8 pf=1 nr=1 ns=0 LM slsap=00 dlsap=12 CONN_RSP (6) e83092008100 . 0 . . . . 8:19:56.416575 i:cmd > ca=e8 pf=1 nr=1 ns=1 LM slsap=12 dlsap=00 GET_VALUE_BY_CLASS: "IrDA:IrCOMM" "Parameters" (28) e9320012840b497244413a4972434f4d4d0a506172616d6574657273 . 2 . . . . I r D A : I r C O M M . P a r a m e t e r s 08:19:56.428363 i:rsp < ca=e8 pf=1 nr=2 ns=1 LM slsap=00 dlsap=12 GET_VALUE_BY_CLASS: Success N/A (16) e8521200840000010001020003000106 . R . . . . . . . . . . . . . . 08:19:56.428378 i:cmd > ca=e8 pf=1 nr=2 ns=2 LM slsap=12 dlsap=00 DISC (6) e95480120201 . T . . . . 08:19:56.435267 rr:rsp < ca=e8 pf=1 nr=3 (2) e871 . q
Ya tenemos todo el tema del IrCOMM negociado...ahora un nivel mas. La elección de tinyTP como protocolo de transporte.
08:19:56.435278 i:cmd > ca=e8 pf=1 nr=2 ns=3 LM slsap=13 dlsap=00 CONN_CMD (6) e95680130100 . V . . . . 08:19:56.442599 i:rsp < ca=e8 pf=1 nr=4 ns=2 LM slsap=00 dlsap=13 CONN_RSP (6) e89493008100 . . . . . . 08:19:56.442613 i:cmd > ca=e8 pf=1 nr=3 ns=4 LM slsap=13 dlsap=00 GET_VALUE_BY_CLASS: "IrDA:IrCOMM" "IrDA:TinyTP:LsapSel" (37) e9780013840b497244413a4972434f4d4d13497244413a54696e7954503a4c73 . x . . . . I r D A : I r C O M M . I r D A : T i n y T P : L s 08:19:56.455230 i:rsp < ca=e8 pf=1 nr=5 ns=3 LM slsap=00 dlsap=13 GET_VALUE_BY_CLASS: Success Integer: 02 (15) e8b613008400000100010100000002 . . . . . . . . . . . . . . . 08:19:56.455241 i:cmd > ca=e8 pf=1 nr=4 ns=5 LM slsap=13 dlsap=00 DISC (6) e99a80130201 . . . . . . 08:19:56.462100 rr:rsp < ca=e8 pf=1 nr=6 (2) e8d1 . . 08:19:56.462108 i:cmd > ca=e8 pf=1 nr=4 ns=6 LM slsap=11 dlsap=02 CONN_CMD TTP credits=0(7) e99c821101000e . . . . . . . 08:19:56.470099 i:rsp < ca=e8 pf=1 nr=7 ns=4 LM slsap=02 dlsap=11 CONN_RSP TTP credits=0(7) e8f89102810001 . . . . . . . 08:19:56.470121 rr:cmd > ca=e8 pf=1 nr=5 (2) e9b1 . . 08:19:56.476544 rr:rsp < ca=e8 pf=1 nr=7 (2) e8f1 . .
Empieza pues la sincronización:
08:19:56.476553 i:cmd > ca=e8 pf=1 nr=5 ns=7 LM slsap=11 dlsap=02 TTP credits=0 (24) e9be0211001200010410040000258011011312010020010c . . . . . . . . . . . . . % . . . . . . . . . 08:19:56.486517 i:rsp < ca=e8 pf=1 nr=0 ns=5 LM slsap=02 dlsap=11 TTP credits=2 (5) e81a110202 . . . . . 08:19:56.486527 rr:cmd > ca=e8 pf=1 nr=6 (2) e9d1 . . 08:19:56.492879 rr:rsp < ca=e8 pf=1 nr=0 (2) e811 . . 08:19:56.541090 rr:cmd > ca=e8 pf=1 nr=6 (2) e9d1 . . 08:19:56.550883 i:rsp < ca=e8 pf=1 nr=0 ns=6 LM slsap=02 dlsap=11 TTP credits=0 (29) e81c11020017100400002580110103120100130211131402131120010c . . . . . . . . . . % . . . . . . . . . . . . . . . . . 08:19:56.550924 rr:cmd > ca=e8 pf=1 nr=7 (2) e9f1 . . 08:19:56.557610 rr:rsp < ca=e8 pf=1 nr=0 (2) e811 . . 08:19:56.601092 rr:cmd > ca=e8 pf=1 nr=7 (2) e9f1 . . 08:19:56.609661 i:rsp < ca=e8 pf=1 nr=0 ns=7 LM slsap=02 dlsap=11 TTP credits=0 (18) e81e11020000beefed030303000029ccd5cb . . . . . . . . . . . . . . ) . . . [...............] 08:20:06.067169 i:cmd > ca=e8 pf=1 nr=3 ns=5 LM slsap=11 dlsap=02 TTP credits=2 (22) e97a02110200beefed03030200042ad002c00004222f . z . . . . . . . . . . . . * . . . . . " / 08:20:06.077126 i:rsp < ca=e8 pf=1 nr=6 ns=3 LM slsap=02 dlsap=11 TTP credits=1 (5) e8d6110201 . . . . . 08:20:06.077179 i:cmd > ca=e8 pf=1 nr=4 ns=6 LM slsap=11 dlsap=02 DISC (6) e99c82110201 . . . . . . 08:20:06.084171 rr:rsp < ca=e8 pf=1 nr=7 (2) e8f1 . . 08:20:06.084209 rr:cmd > ca=e8 pf=1 nr=4 (2) e991 . . rd:rsp < ca=0xe8 pf=1 (2) e853 . S 08:20:06.090113 disc:cmd > ca=0xe8 pf=1 (2) e953 . S 08:20:06.094935 ua:rsp ca=e8 pf=1 03edefbe < 01021182 (2) e873 . s
Esto último es la desconexión. Consecuencia de, o por abortar la transmisión o porque ha finalizado la sincronización.
Ahora otro pasito mas. Contectaremos la Palm con ppp via IR al Linux para que dé salida a Internet a la Palm.
Como siempre, prepararemos el núcleo por si no tenemos soporte. Vamos a utilizar enmascaramiento, así que deben de estar seleccionadas estas opciones del núcleo, entre otras muchas:
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_MIRROR=y
CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_IP_NF_NAT_FTP=y
Iptables debe estar instalado. Procedemos:
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -d 192.168.0.0/16 -j MASQUERADE
pppd /dev/ircomm0 115200 192.168.1.149:192.168.1.246 proxyarp passive
silent nopersist noauth local nodetach ms-dns 192.168.2.1
Recomiendo un man pppd. Pero vamos, así a bote pronto, que sepáis que 192.168.1.149 es el ordenador (Linux), la 192.168.1.246 la que se le asigna a la Palm y el ms-dns es la dns. Sigamos:
annapurna:~# cat /proc/sys/net/ipv4/ip_forward 1 annapurna:~# pppd /dev/ircomm0 115200 192.168.1.149:192.168.1.246 proxyarp passive silent nopersist noauth local nodetach ms-dns 192.168.1.122 PPP generic driver version 2.4.1 Using interface ppp0 Connect: ppp0 <--> /dev/ircomm0
Ahora nos vamos a la Palm. Elegimos "Preferencias", "Menú de red". Allí elegimos:
Servicio: Linux o el que sea, lo podemos crear.
Usuario: da igual mientras en el pppd este el noauth.
Contraseña: preguntar
Conexion: IR a PC/Portatil
Lo de "Detalles" puede estar vacio, no hace falta ningún guión.
Le damos a conectar.
Cuando conectas, en el terminal del Linux aparece:
PPP BSD Compression module registered PPP Deflate Compression module registered Cannot determine ethernet address for proxy ARP local IP address 192.168.1.149 remote IP address 192.168.1.246
Vía syslog leemos:
Nov 7 11:36:36 annapurna kernel: PPP generic driver version 2.4.1 Nov 7 11:36:36 annapurna pppd[1704]: pppd 2.4.1 started by root, uid 0 Nov 7 11:36:36 annapurna kernel: ircomm_tty_attach_cable() Nov 7 11:36:36 annapurna kernel: ircomm_tty_ias_register() Nov 7 11:36:36 annapurna kernel: irlmp_register_client_R17f18bfb() Nov 7 11:36:36 annapurna pppd[1704]: Using interface ppp0 Nov 7 11:36:36 annapurna pppd[1704]: Connect: ppp0 <--> /dev/ircomm0 Nov 7 11:37:48 annapurna kernel: irlap_change_speed(), setting speed to 115200 Nov 7 11:37:48 annapurna kernel: iriap_connect_indication() Nov 7 11:37:48 annapurna kernel: irlmp_state_dtr(), Unknown event LM_LAP_CONNECT_CONFIRM Nov 7 11:37:48 annapurna kernel: ircomm_param_service_type(), services in common=04 Nov 7 11:37:48 annapurna kernel: ircomm_param_service_type(), resulting service type=0x04 Nov 7 11:37:48 annapurna kernel: ircomm_param_xon_xoff(), XON/XOFF = 0x11,0x13 Nov 7 11:37:48 annapurna kernel: ircomm_param_enq_ack(), ENQ/ACK = 0x13,0x11 Nov 7 11:37:48 annapurna kernel: ircomm_tty_check_modem_status() Nov 7 11:37:48 annapurna kernel: irlmp_state_active(), Unknown event LM_LAP_DISCOVERY_CONFIRM Nov 7 11:37:49 annapurna kernel: PPP BSD Compression module registered Nov 7 11:37:49 annapurna kernel: PPP Deflate Compression module registered Nov 7 11:37:49 annapurna kernel: irlmp_state_dtr(), Unknown event LM_WATCHDOG_TIMEOUT Nov 7 11:37:49 annapurna pppd[1704]: Cannot determine ethernet address for proxy ARP Nov 7 11:37:49 annapurna pppd[1704]: local IP address 192.168.1.149 Nov 7 11:37:49 annapurna pppd[1704]: remote IP address 192.168.1.246
Aparecen algunos fallitos, pero funciona.
Bueno, ya estamos conectados.
Para desconectar le damos a Desconectar en la Palm o matamos al pppd, y nos devuelve en la terminal lo de siempre cuando estamos con un modem normal.
IPCP terminated by peer
LCP terminated by peer
Modem hangup
Connection terminated.
Connect time 0.3 minutes.
Sent 73 bytes, received 62 bytes.
La conexión es, a nivel de IrLAP, calcada a cuando realizamos la sincronización. Sin embargo hay una parte que pertenece a la negociacion del PPP. Pego directamente los cachos del registro mas interesantes.
Conexión.....
10:43:31.711102 xid:cmd d8a82a1b > ffffffff S=6 s=0 (14) ff3f011b2aa8d8ffffffff010000 . ? . . * . . . . . . . . . 10:43:31.801086 xid:cmd d8a82a1b > ffffffff S=6 s=1 (14) ff3f011b2aa8d8ffffffff010100 . ? . . * . . . . . . . . . 10:43:31.891087 xid:cmd d8a82a1b > ffffffff S=6 s=2 (14) ff3f011b2aa8d8ffffffff010200 . ? . . * . . . . . . . . . 10:43:31.981083 xid:cmd d8a82a1b > ffffffff S=6 s=3 (14) ff3f011b2aa8d8ffffffff010300 . ? . . * . . . . . . . . . 10:43:32.071088 xid:cmd d8a82a1b > ffffffff S=6 s=4 (14) ff3f011b2aa8d8ffffffff010400 . ? . . * . . . . . . . . . 10:43:32.161083 xid:cmd d8a82a1b > ffffffff S=6 s=5 (14) ff3f011b2aa8d8ffffffff010500 . ? . . * . . . . . . . . . 10:43:32.251084 xid:cmd d8a82a1b > ffffffff S=6 s=* annapurna hint=8404 [ Computer IrCOMM ] (26) ff3f011b2aa8d8ffffffff01ff00840400616e6e617075726e61 . ? . . * . . . . . . . . . . . . a n n a p u r n a 10:43:33.101644 xid:cmd ffffffff < 2542fb13 S=6 s=0 (14) ff3f0113fb4225ffffffff010000 . ? . . . B % . . . . . . . 10:43:33.191479 xid:cmd ffffffff < 2542fb13 S=6 s=1 (14) ff3f0113fb4225ffffffff010100 . ? . . . B % . . . . . . . 10:43:33.191502 xid:rsp d8a82a1b > 2542fb13 S=6 s=1 annapurna hint=8404 [ Computer IrCOMM ] (26) febf011b2aa8d813fb4225010100840400616e6e617075726e61 . . . . * . . . . B % . . . . . . a n n a p u r n a 10:43:33.271729 xid:cmd ffffffff < 2542fb13 S=6 s=2 (14) ff3f0113fb4225ffffffff010200 . ? . . . B % . . . . . . . 10:43:33.421490 xid:cmd ffffffff < 2542fb13 S=6 s=3 (14) ff3f0113fb4225ffffffff010300 . ? . . . B % . . . . . . . 10:43:33.511434 xid:cmd ffffffff < 2542fb13 S=6 s=4 (14) ff3f0113fb4225ffffffff010400 . ? . . . B % . . . . . . . 10:43:33.601481 xid:cmd ffffffff < 2542fb13 S=6 s=5 (14) ff3f0113fb4225ffffffff010500 . ? . . . B % . . . . . . . 10:43:33.701342 xid:cmd ffffffff < 2542fb13 S=6 s=* IrCOMM hint=8204 [ PDA/Palmtop IrCOMM ] (23) ff3f0113fb4225ffffffff01ff008204004972434f4d4d . ? . . . B % . . . . . . . . . . I r C O M M 10:43:33.750610 snrm:cmd ca=fe pf=1 d8a82a1b < 2542fb13 new-ca=da (32) ff9313fb42251b2aa8d8da01013f82010183010f8401018501088601070801ff . . . . B % . * . . . . . ? . . . . . . . . . . . . . . . . . . 10:43:33.750666 ua:rsp ca=da pf=1 d8a82a1b > 2542fb13 (31) da731b2aa8d813fb422501013e82010183013f84017f8501ff860107080107 . s . * . . . . B % . . > . . . . . ? . . . . . . . . . . . . 10:43:33.806403 rr:cmd < ca=da pf=1 nr=0 (2) db11 . . 10:43:33.806419 rr:rsp > ca=da pf=1 nr=0 (2) da11 . . 10:43:33.813486 i:cmd < ca=da pf=1 nr=0 ns=0 LM slsap=01 dlsap=00 CONN_CMD (6) db1080010100 . . . . . . 10:43:33.813522 i:rsp > ca=da pf=1 nr=1 ns=0 LM slsap=00 dlsap=01 CONN_RSP (6) da3081008100 . 0 . . . . 10:43:33.824685 i:cmd < ca=da pf=1 nr=1 ns=1 LM slsap=01 dlsap=00 GET_VALUE_BY_CLASS: "IrDA:IrCOMM" "IrDA:TinyTP:LsapSel" (37) db320001840b497244413a4972434f4d4d13497244413a54696e7954503a4c73 . 2 . . . . I r D A : I r C O M M . I r D A : T i n y T P : L s 10:43:33.824711 i:rsp > ca=da pf=1 nr=2 ns=1 LM slsap=00 dlsap=01 GET_VALUE_BY_CLASS: Success Integer: 15 (15) da5201008400000123430100000015 . R . . . . . . # C . . . . . 10:43:33.834302 i:cmd < ca=da pf=1 nr=2 ns=2 LM slsap=02 dlsap=15 CONN_CMD TTP credits=0(11) db54950201000103000104 . T . . . . . . . . . 10:43:33.834358 i:rsp > ca=da pf=1 nr=3 ns=2 LM slsap=15 dlsap=02 CONN_RSP TTP credits=0(7) da74821581000e . t . . . . . 10:43:33.841561 rr:cmd < ca=da pf=1 nr=3 (2) db71 . q 10:43:33.841572 i:rsp > ca=da pf=1 nr=3 ns=3 LM slsap=15 dlsap=02 TTP credits=0 (21) da760215000f10040000258011010312010020010c . v . . . . . . . . % . . . . . . . . . 10:43:33.851185 i:cmd < ca=da pf=1 nr=4 ns=3 LM slsap=02 dlsap=15 TTP credits=2 (5) db96150202 . . . . . 10:43:33.851197 rr:rsp > ca=da pf=1 nr=4 (2) da91 . . 10:43:33.857643 rr:cmd < ca=da pf=1 nr=4 (2) db91 . . [...............]
NOTA: ¡Atentos! entra el PPPD
10:43:33.933213 i:cmd < ca=da pf=1 nr=4 ns=5 LM slsap=02 dlsap=15 TTP credits=0 (43) db9a150200007eff7d23c0217d217d267d207d2e7d227d267d207d207d207d20 . . . . . . ~ . } # . ! } ! } & } } . } " } & } } } } 10:43:33.933238 rr:rsp > ca=da pf=1 nr=6 (2) dad1 . . 10:43:33.939934 rr:cmd < ca=da pf=1 nr=4 (2) db91 . . 10:43:33.939946 i:rsp > ca=da pf=1 nr=6 ns=4 LM slsap=15 dlsap=02 TTP credits=2 (51) dad8021502007eff7d23c0217d217d217d207d347d227d267d207d207d207d20 . . . . . . ~ . } # . ! } ! } ! } } 4 } " } & } } } } 10:43:33.955593 rr:cmd < ca=da pf=1 nr=5 (2) dbb1 . . 10:43:33.955605 i:rsp > ca=da pf=1 nr=6 ns=5 LM slsap=15 dlsap=02 TTP credits=0 (44) dada021500007eff7d23c0217d227d267d207d2e7d227d267d207d207d207d20 . . . . . . ~ . } # . ! } " } & } } . } " } & } } } } 10:43:33.970152 i:cmd < ca=da pf=1 nr=6 ns=6 LM slsap=02 dlsap=15 TTP credits=1 (5) dbdc150201 . . . . . 10:43:33.970163 rr:rsp > ca=da pf=1 nr=7 (2) daf1 . . [...............] 10:43:34.041139 i:cmd < ca=da pf=1 nr=6 ns=7 LM slsap=02 dlsap=15 TTP credits=1 (31) dbde150201007eff7d23c0217d247d217d207d2a7d257d26e6378f95a9c27e . . . . . . ~ . } # . ! } $ } ! } } * } % } & . 7 . . . . ~ 10:43:34.041155 rr:rsp > ca=da pf=1 nr=0 (2) da11 . . 10:43:34.047801 rr:cmd < ca=da pf=1 nr=6 (2) dbd1 . . 10:43:34.047809 i:rsp > ca=da pf=1 nr=0 ns=6 LM slsap=15 dlsap=02 TTP credits=1 (43) da1c021501007eff7d23c0217d217d227d207d2e7d227d267d207d207d207d20 . . . . . . ~ . } # . ! } ! } " } } . } " } & } } } } [..............] 10:43:34.141818 i:cmd < ca=da pf=1 nr=7 ns=0 LM slsap=02 dlsap=15 TTP credits=1 (43) dbf0150201007eff7d23c0217d227d227d207d2e7d227d267d207d207d207d20 . . . . . . ~ . } # . ! } " } " } } . } " } & } } } } 10:43:34.141842 rr:rsp > ca=da pf=1 nr=1 (2) da31 . 1 10:43:34.148556 rr:cmd < ca=da pf=1 nr=7 (2) dbf1 . . 10:43:34.148567 i:rsp > ca=da pf=1 nr=1 ns=7 LM slsap=15 dlsap=02 TTP credits=1 (27) da3e021501008021010100100306c0a801950206002d0f0146e97e . > . . . . . ! . . . . . . . . . . . . . - . . F . ~ 10:43:34.158795 rr:cmd < ca=da pf=1 nr=0 (2) db11 . . 10:43:34.158803 i:rsp > ca=da pf=1 nr=1 ns=0 LM slsap=15 dlsap=02 TTP credits=0 (26) da300215000080fd0101000f1a0478001804780015032f32a37e . 0 . . . . . . . . . . . . x . . . x . . . / 2 . ~ 10:43:34.169307 i:cmd < ca=da pf=1 nr=1 ns=1 LM slsap=02 dlsap=15 TTP credits=1 (5) db32150201 . 2 . . . 10:43:34.169321 rr:rsp > ca=da pf=1 nr=2 (2) da51 . Q [...............]
Solicitamos desconexión DESDE la Palm. Primero el PPP y luego el IrCOMM:
10:43:40.739173 i:cmd < ca=da pf=1 nr=5 ns=0 LM slsap=02 dlsap=15 TTP credits=1 (23) dbb0150201007eff7d23c0217d257d287d207d24235b7e . . . . . . ~ . } # . ! } % } ( } } $ # [ ~ 10:43:40.739194 rr:rsp > ca=da pf=1 nr=1 (2) da31 . 1 10:43:40.745815 rr:cmd < ca=da pf=1 nr=5 (2) dbb1 . . 10:43:40.745828 i:rsp > ca=da pf=1 nr=1 ns=5 LM slsap=15 dlsap=02 TTP credits=1 (24) da3a021501007eff7d23c0217d267d287d207d24ee7d5e7e . : . . . . ~ . } # . ! } & } ( } } $ . } ^ ~ 10:43:40.757012 rr:cmd < ca=da pf=1 nr=6 (2) dbd1 . . 10:43:40.757028 rr:rsp > ca=da pf=1 nr=1 (2) da31 . 1 10:43:40.763324 rr:cmd < ca=da pf=1 nr=6 (2) dbd1 . . 10:43:40.763334 rr:rsp > ca=da pf=1 nr=1 (2) da31 . 1 10:43:40.769749 rr:cmd < ca=da pf=1 nr=6 (2) dbd1 . . 10:43:40.769757 rr:rsp > ca=da pf=1 nr=1 (2) da31 . 1 10:43:41.239588 disc:cmd < ca=0xda pf=1 (2) db53 . S 10:43:41.239617 ua:rsp ca=da pf=1 d8a82a1b > 2542fb13 (10) da731b2aa8d813fb4225 . s . * . . . . B % 10:43:46.711103 xid:cmd d8a82a1b > ffffffff S=6 s=0 (14) ff3f011b2aa8d8ffffffff010000 . ? . . * . . . . . . . . .
A modo de curiosidad, aquí teneis un fingerprint a una palm realizado con un nmap. Es curioso, la misma operación desde el crandle me cuelga la Palm.
SInfo(V=2.54BETA28%P=i586-pc-linux-gnu%D=10/15%Time=3BCB32E9%O=-1%C=1)
T5(Resp=Y%DF=N%W=0%ACK=S++%Flags=AR%Ops=)
T6(Resp=Y%DF=N%W=0%ACK=O%Flags=R%Ops=)
T7(Resp=Y%DF=N%W=0%ACK=S++%Flags=AR%Ops=)
PU(Resp=Y%DF=N%TOS=0%IPLEN=38%RIPTL=148%RID=E%RIPCK=E%UCK=E%ULEN=134%DAT=E)
Bueno, y con esto ponemos final a este punto. ¿Que os ha parecido?.
¿Mas?.