Fedora Core 6 Zod
is out. :-D
20061024
20061023
Conky
Conky, a cool lighweight system monitor is now available on Fedora Core 5. I’ve created an SRPM for it, which can be downloaded from http://wahjava.googlepages.com/conky-1.4.2-1.src.rpm . It is just another RPM which I built recently from scratch. And BtW, Fedora Core 6 is going to release tomorrow, so before you install it, why not try this package and comment on my rpmbuild
ing skills. ;-)
20061022
Google Mail from Germany
Google Mail (not Gmail) when accessed via a host in .de top-level domain.
20061019
Google felt sorry
20061013
So, you’re bored with @gmail.com gmail address
So, if you’re bored with @gmail.com
gmail address, you can try a @googlemail.com
domain name. Any mail sent to dc3434v4525aqw@googlemail.com
will be delivered to mailstore as mail sent to dc3434v4525aqw@gmail.com
. So you just have to advertise your googlemail.com
address and you’re done. For more information, refer to Google Mail @ Wikipedia.
If you’re a Google Apps for Your Domain user…
If you’re a Google Apps for Your Domain user then, there are 99% chances that you can’t interoperate with non-Google Jabber users. Why ? In Jabber technology (or precisely XMPP protocol), user of one server can IM to user of another server. e.g. The process that takes when wahjava@gmail.com wants to talk to wahjava@jabber.org is illustrated below:
- Client of wahjava@gmail.com sends message destined to wahjava@jabber.org to gmail.com jabber server i.e. talk.google.com server.
- talk.google.com then starts search for the jabber server handling jabber.org domain. It first performs a DNS query for SRV record of _xmpp-server._tcp.jabber.org domain name. It recieves
30 30 5269 jabber.org.
(as of now). Now from this reply, it deduces that jabber.org is the jabber server handling jaber.org domain. - It then sends this message to jabber.org jabber server.
- From jabber.org jabber server, the message gets delivered to wahjava@jabber.org.
Now if wahjava@jabber.org wants to talk to wahjava@jnoiyunrn027n47jlsu.com (a Google Apps for Your Domain user), then 99% of chances are that he can’t. Why ? Because there is no SRV record for XMPP service (i.e. SRV record corresponding to _xmpp-server._tcp.jnoiyunrn027n47jlsu.com) present in the domain nameserver of jnoiyunrn027n47jlsu.com domain. So if wahjava@jnoiyunrn027n47jlsu.com wants to enable Jabber service (provided by Google Apps for Your Domain) fully, he needs to add a SRV record in domain nameserver of jnoiyunrn027n47jlsu.com.
This is neither mentioned in any of Google’s FAQ for Google Apps for Your Domain. I found this after failing to inviting one of my friend (who is a Google Apps for Your Domain user) to a Jabber conference hosted at jabber.org. Thanks to users at jabber channel jdev in jabber.org server for explaining me how Jabber server discovery for a domain takes place (which prevented me from looking into its RFCs ;)).
If no matching SRV record is found then the IP address pointed by A record (and probably AAAA record too, though I’m not sure on this) of domain name is probed for Jabber service.
Anonymizing with The Onion Router
Well last night, I tried tor (in combination with privoxy). As I’m on Fedora Core 5 AMD64 architecture and there is no prebuilt package available for my platform, so I downloaded its source tarball. Fortunately, it contains tor.spec
(which is required for building RPMs). So I tried rpmbuild
ing on tor.spec
but unfortunately that failed. So I hacked my own tor.spec file. In order to build tor using this file, make sure you’ve rpmdevtools
package. rpmdevtools
will assist you in building RPMs in non-superuser mode. If you’re using rpmdevtools
, use rpmdev-setuptree
to setup a build tree for you at ~/rpmbuild
location. Now, download tor.spec
file in {rpmbuild-root}/SPECS. And download tor-0.1.1.24.tar.gz
from http://tor.eff.org/ into {rpmbuild-root}/SOURCES. Now start build with rpmbuild -bb {rpmbuild-root}/SPECS/tor.spec
. This will result in tor*-0.1.1.24-1.{architecture}.rpm built in {rpmbuild-root}/RPMS/{architecture} directory. Now, since you’ve RPMs you know what to do ;-). After installing tor you can start it with sudo torctl start
. You also need to install Privoxy. It is available as an rpm in FC5. For more details, refer to tor docs.
Why do we need an anonymizer ? Good question, I hope this page will answer you.
20061010
Wanna 1337Speak
Here is 1337Speak Guide.
#!/bin/sh # The LEET-2-1337 converter sed -e s/\[cC\]\[kK\]/X/g -e s/A/4/g -e s/B/8/g -e s/D/\|\)/g -e s/E/3/g -e s/F/\|=/g \ -e s/G/6/g -e s/H/\#/g -e s/I/\!/g -e s/J/_\|/g -e s/K/X/g -e s/L/1/g -e s/M/\|v\|/g \ -e s/N/\|\\\\\\\\\|/g -e s/O/0/g -e s/P/1\"/g -e s/Q/O_/g -e s/R/\|2/g -e s/S/5/g -e \ s/T/7/g -e s/U/\|_\|/g -e s\[V\[\\\\\\\\/\[g -e s\[W\[\|/\\\\\\\\\|\[g -e s/X/\>\</g
20061009
/ME became a FreeBSD port maintainer
:D Yippee!! :D, finally my 2 (out of 4) ports are committed in the FreeBSD ports tree :). Actually, I submitted 4 ports, out of which only 2 are committed. The committed ports are x11/libxcb, and x11/xcb-proto.
20061006
Multicasting audio with VLC – II
Though I’ve no previous plans to release part-II. But unfortunately what I found after some packet sniffing, inspired me to post this next part. This part deals with the reality of multicasting. Multicasting is a good technique that can minimize the unnecessary traffic on the internet, but unfortunately it is not implemented properly (by ISPs, by network devices etc.) . First, read the following dump:
[abbe@chatteau-d-lf ~]$ vlc -I dummy --sout='#duplicate{dst=display,dst=std{access=rtp,\\ > mux=ts,dst=239.1.0.3:1234}}' http://ct4.fast-serv.com:9620 >&2 2>/dev/null & [1] 24445 [abbe@chatteau-d-lf ~]$ ssh abbe@172.16.0.3 abbe@172.16.0.3's password: Linux marseilles 2.6.15-27-amd64-generic #1 SMP PREEMPT Sat Sep 16 01:50:50 UTC 2006 x86_64 GNU/Linux The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have mail. Last login: Fri Oct 6 11:02:59 2006 abbe@marseilles:~$ sudo tcpdump -i eth0 ether multicast and dst port 1234 Password: tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes 12:04:18.934508 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:19.075196 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:19.223828 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:19.368566 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:19.517352 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:19.666095 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:19.810695 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:19.955592 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:20.100319 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:20.248925 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:20.393607 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:20.542330 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 12:04:20.686872 IP 172.16.0.2.32805 > 239.1.0.3.1234: UDP, length 1316 13 packets captured 27 packets received by filter 0 packets dropped by kernel abbe@marseilles:~$ exit logout Connection to 172.16.0.3 closed. [abbe@chatteau-d-lf ~]$ sudo /usr/sbin/tcpdump -i eth2 ether multicast and dst port 1234 Password: tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth2, link-type EN10MB (Ethernet), capture size 96 bytes 12:05:53.730136 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:53.878769 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:54.023399 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:54.171926 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:54.316514 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:54.465112 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:54.609687 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:54.754349 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:54.902971 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:55.047641 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:55.196428 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12:05:55.341313 IP 172.16.0.2.32805 > 239.1.0.3.search-agent: UDP, length 1316 12 packets captured 24 packets received by filter 0 packets dropped by kernel
As you can see in the above dump, that the audio is being multicasted to a multicast ethernet address, but the network switch (in my case it is D-Link DES-1026G) is over (or under)-smart :-P. So it is not altering the destination address of the ethernet frame but instead broadcasting (not actually ethernet layer broadcast i.e. not destined for FF:FF:FF:FF:FF:FF
MAC address) to all ethernet ports. Hence this is a virtual multicasting (or simulation of multicast ;-) ). So before going for any network device, make sure it supports multicasting properly (if you plan to multicast in future). And at last, I would like to thank Gautam for sharing his Late W. Richard Steven‘s UNP book, his knowledge, and that multiple unicast anecdote :-D with me.