clojureでnslookupコマンドもどきを試してみる
これもJavaで調べていた物をClojureの勉強兼ねてコードを書いたもの。
ドメインを渡すとIPアドレスを返すという、nslookupコマンドもどきです。
こちらはREPL環境でちょっと試しただけ。
単純にjava.net InetAddressを使っているだけなので、目新しさは無いです。
user=> (import '(java.net InetAddress)) java.net.InetAddress user=> (def inet_address (InetAddress/getByName "yahoo.co.jp")) #'user/inet_address user=> (map #(if (> 0 %) (str (+ % 256)) (str %)) (.getAddress inet_address)) ("203" "216" "227" "176")
実際にnslookupコマンドを実行した結果はこんな感じ。
nslookup yahoo.co.jp Server: 192.168.0.1 Address: 192.168.0.1#53 Non-authoritative answer: Name: yahoo.co.jp Address: 203.216.227.176
参考:http://www.java2s.com/Code/Java/Network-Protocol/AnnslookupcloneinJava.htm