« 雑記(7月号) | Main | すみません、クサイです »

July 21, 2010

教えて、先生

ボクの心の叫びを聞いてください。

今ね、何か特殊なドキュメントに書かれてるhostのドメイン名を
DNSに問い合わせて名前解決するプログラムを書いてるんだけど、
名前からIPを引くだけならgethostbynameでいけるんだけど、
TTLから有効期間まで計算して出して欲しいという要求があって
hostentに取れる情報だけじゃ足りないということがわかって、
WinならWin32 APIかCOMにライブラリがあった気がしたんだけど
Linux gccにそんなのないかなーとGoogle先生にいろいろ聞いても
なかなか思うような答えがなく、もうこの際nslookupとかdigとかを
systemで呼んでそのストリームを読むか?とも思ったけど、
そこは私のプログラマ魂が許さず、やっぱりsocketでやるぞ!と
覚悟を決めて、DNSのRFCを読んで、名前問い合わせデータの
パケットをゴリゴリつくってUDPで飛ばしてselectで応答を取って
半圧縮されてる応答データを解析するところまでつくって、
そういえばnameserverはresolv.confから取らないとなーと思って
そんなサンプル転がってないかなと「resolv.conf」で先生に聞いたら
Linuxで名前解決するresolverなるライブラリがあることを知る!!


…ていうか、何語だよ。


ここまでつくるのに丸2日はかかったんですが?

Google先生の有効性って、ホント聞き方で大きく変わりますね。

いや、出鱈目に聞いてもある程度の答えを返してくれるんですが、
ズバリ欲しい答えを返してもらうには、コツがいるってこと。

要は、真の答えを引き出すためのキーワードを知ってるかどうか。

コレです。まさに、カギとなる言葉です。

今回の私の場合、LinuxのC++で名前解決をしたいってことで
Linux、C++、ライブラリ、名前解決…みたいなキーワードで
検索かけてたんですが、出てくるのはnslookupとかdigなどの
コマンドの使い方とか、DNSサーバであるbindの情報とか、
そんなのはいっぱい出るんだけど、肝心のライブラリの情報がない。

で、今日、帰り間際に、resolv.confの読み方を聞いてみたら、
resolverの情報がトップでヒットしやがんの!

コレだよ!オレが2日前に欲しかったのコレだよ!
ていうか、今も欲しいんだけど。ていうかライブラリあるじゃん!
しかもLinux標準!オレの2日間を返せーッ。(半泣)

Linuxを知ってる人の間では常識的な知識かもしれませんが、
10年以上Windowsな私はそんなの知らないもん。

つくづく、キーワード重要。

それを知ってるか知らないかで、私の場合、工数が2人日違ったし。

でも、知らないものはしょうがない。

知ってる人に聞けば一番はやいんですけどね。
今周囲にいる人たちはJava天国なので、そんな低レベルな操作を
知ってる人がいないんです。

そんなときに、先生はかなり重要なツールになるわけで。


このキーワード検索時代、知識は広く浅くでも良いので
できるだけ多くのキーワードを知ってると有利ですね。


そんなことを痛感したこの数日。


チクショー。bearing

|

« 雑記(7月号) | Main | すみません、クサイです »

「日記・コラム・つぶやき」カテゴリの記事

Comments

それ なんてラノベ?

Posted by: RORO | July 22, 2010 at 09:11 AM

激しく同意
急いでる時はなかなか見つからないのに、何気に検索すると興味深いサイトが見つかる
キーワードは重要ですな

Posted by: はる | July 22, 2010 at 06:49 PM

この2日はライトというよりヘヴィでした。

はるさんの言を見て、探し物は必要なときに見つからないというのは、そういえばネット上だけのことじゃないなぁ、と思いました。キーワードも含め、記憶や身の回りを整理しておくことも大事ですね。(^-^;

Posted by: 月影 | July 23, 2010 at 10:25 PM

ホントって…なんだろう…?

Posted by: BlogPetのこうさぎ | July 24, 2010 at 02:55 PM

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/35781/48940796

Listed below are links to weblogs that reference 教えて、先生:

« 雑記(7月号) | Main | すみません、クサイです »