Thursday, November 29, 2007

TransConnect Introduction

INTRO

As many users don't have the need for a proxy. Many applications are designed without considering the scenario that indirect connection may be needed, even NAT connections may be limited.

In the company I work for, it is a must to tunnel networked applications through a proxy server that supports CONNECT method.

The CONNECT method is a specially reserved method by HTTP, as you can see in RFC 2616. It's design was for TLS based HTTPS protocol to pass proxy servers correctly. However, it actually can be used by and is used by other protocols and applications.

If an application supports proxy server, congratulations, you can set it up and everything works happily. But if it happens to be hard to setup the proxy (like git), or the application I am about to use just don't have proxy support in it. What can I do?

Here comes transconnect.

It can be built and used without root privilege. This is nice when a certain application meets one of the two criterion:

  • Proxy setup is a nightmare
  • Doesn't support proxy at all
There are limitations, however.

  • The application has to be TCP based. (I guess, not verified.)
  • The application shall not be something like SIP, which is very bad designed for its dependency of an application layer protocol to its layer 3 address and layer 4 port number.
INSTALLATION

The download can be done within one nano-second. No configure needed. Just "make"
and "make install". It is installed in a user's home directory. "/usr//" installation is not needed and the default build works in this way, no "PREFIX" needed, either.

After it is installed, a shared object can be located "~/.tconn/tconn.so". Edit the "~/.tconn/tconn.conf" to provide transconnect the knowledge of your internal subnet setting and proxy server address .

To use it, just do the following:

LD_PRELOAD=~/.tconn/tconn.so git clone git://xxxx yyyyy

The LD_PRELOAD forces tconn.so be loaded and makes the application "git" to link its socket operations into tconn.so instead of standard socket library. "git" needs not be modified or proxy configured to be able to work from now on. Isn't it great?

CONCLUSION

Even applications support proxy, they will have to implement either refer to some environment variables for proxy setting or will have to implement a Preference to set and store it. That is one example of reinventing wheels. No matter how convenient the wheels can be made, struggles like Gnome and KDE still remain a burden for a regular user like me to be confused where to set up to make every thing moves like a charm.

Typically, I have to setup Firefox, Gnome, wget, ssh, git, svn, and so on, Synaptics Package manager just to get my Internet applications all working properly. Hope this will all end some day.

If the idea of transconnect can be adopted as part of the platform, my sleep can be tight and maybe nightmares won't come back.

Friday, November 23, 2007

Our Time is Borrowed

Along the way, day to day, we are lucky that can choose what to do or not.
We do not need to fight against the void, like many poor people in third-world countries do. We do not worry about being starved tomorrow. We are responsible for our life and what we do.

We all pass away some day, big CEO, U.S. President, Bill Gates (richest). Fame doesn't go six-feet-under with us, so is shame. Make peace with the natural and stay away from extremism. It is our obligation to leave no track in the non-stop river of time.

Our time is borrowed from eternity and we all pay it back someday. And hopefully, we will have no regret if we can.

Tuesday, November 20, 2007


對總統大選說 NO

自從有投票權以來以來, 一直對選舉這碼子事不熱衷, 倒不是覺得自己的一票沒有價值, 而是幾乎沒有看到值得去投票的政治人物。

每次的大小選舉帶來的是噪音的汙染 (選前是拉票廣播車, 選後變成謝票), 環境的污染 (旗子, 看版, ...), 漫天的政論節目 (每一台都有預設立場), 以及各種手段 (選前一夜放走路工黑函, 翻祖宗十八代, 槍擊, ...)。

唯一我關心的是政見, 所以, 花了一點時間畫了這個圖 "No Vote", 一點都不專業, 也一點都不可愛, 顏色也不好看 (但至少避開了幾個主要政黨的顏色).

就像菜價太高我們可以不買一樣, 我們不一定要挑爛芭樂, 不選不吃也是一種主張。

如果有哪位路過的朋友有美感, 可以提供更好看一點的圖, 小弟可以請吃一頓便飯。 :)

Monday, November 19, 2007

A Note for Myself - Linkin Park tour, Taiwan, 2007/11/16

It's a pity I couldn't join this concert. But we got too many things to pity for in our short life. So, I can still enjoy the fun part. That is, buy their album and enjoy.

The playlist:

1.No more sorrow
2.Lying from you
3.Somewhere I belong
4.Wake+Given up
5.From the inside
6.Don't stay
7.Papercut
8.Petrified
9.Point of authority
10.Shadow of the day
11.What i've done
12.Numb
13.Push me away 《抒情版》
14.Hands held high
15.breaking the habit
16.In the end
17.Crawling
18.One step closer
19.The little things give you away
20.Cure for the itch(Mr.Hann超屌刮碟秀)
21.Bleed it out(rob 神之鼓技+chaz與大家互動 hey ho~ oh ho ~)
22.Faint+加長版ending