Shammer's Philosophy

My private adversaria

2010-12-01から1ヶ月間の記事一覧

URIとURNとURL

似た言葉だが、意味は微妙に異なっている。 まず、URI=URN+URLという構図が成り立つ。 URLというのは、特定のリソースの場所とアクセス方法(スキーム)を表現したもの。 たとえば、http://www.ietf.org/rfc/rfc2396.txtというURI(URL)は、rfc2396.txt がど…

O'Reilly Java ネットワークプログラミング

Java RMI の勉強をするためにいろいろ探してみたが、結局選んだのがこの本。 O'Reilly Japan - Javaネットワークプログラミング 第2版 RMI に限らず、Java でネットワークプログラミングを行うことを網羅している感じ。ネットワークとは何か、という説明から…

コストコデビュー

業務用サイズ・卸値価格でいろいろな物が買える、という噂のコストコに本日デビュー。紹介された人から、「何でも売っているよ!」と言われたので、Windows 7 Ultimate と DDR3 Memory を買おうと意気込んでいったら・・・Windows 7 Ultimate はあったが、メ…

技術的にとがっている人たち

会社の忘年会に参加してきた。忘年会、というだけあって、何となく仕事の話題はタブー状態になっていたけれども(みんな忘れたいんだなぁw)、ちょこっとだけ仕事の話も出た。その中で印象的だった話を紹介。 コンピュータの技術者ならば、誰もが「コンピュ…

Java RMI 復習予定

現在、仕事でRMI通信の処理に絡んだ問い合わせを受けている。しかし、これがなかなかの曲者。自分がRMIを利用した開発をあまり経験していない、ということもあり、RMIの動作でもよくわかっていない部分が多い。これを機に、RMIをしっかり勉強してみようと思…

ioctl で NIC の様々な情報を取得

ioctl で NIC の情報を取得 - Shammerismでは IPv4 のみだったが、MTU や BroadCast アドレスなども取得する関数を作成してみた。 #include <arpa/inet.h> #include <ifaddrs.h> #include <net/if.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include <sys/ioctl.h> #include <unistd.h> int…</unistd.h></sys/ioctl.h></sys/types.h></string.h></stdlib.h></stdio.h></netinet/in.h></net/if.h></ifaddrs.h></arpa/inet.h>

ioctl で NIC の情報を取得

特定NICのIPアドレスを取得する関数 - Shammerismのようにgetifaddrs 関数を使用しても取得できるが、IPv4 の情報であれば ioctl も使用できるようだ。struct ifreq が使用される。 #include <arpa/inet.h> #include <ifaddrs.h> #include <net/if.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> </string.h></stdlib.h></stdio.h></netinet/in.h></net/if.h></ifaddrs.h></arpa/inet.h>…

特定NICのIPアドレスを取得する関数

NIC の IP Address を取得する - Shammerismの内容を少し変更して作成。実際にやってみると、どういうものか詳細はわからないがAF_PACKETの情報もあるようで、綺麗に取得するのは難しい印象。そのため、情報を返すのではなく渡された入れ物に結果を入れると…

NIC の IP Address を取得する

ホスト名から DNS の名前解決をするようなプログラムは以前に書いたことがあるが、RAW_SOCKET でプログラムを作成する際には使用する NIC からその NIC に設定されている IP Address を取得したい。サンプルを見つけたのでメモ。リンクはc++ - Get the IP ad…

NIC の MAC address を取得することに成功

C

NIC の MAC address を取得するも失敗 - Shammerismの文字化け調査で、ioctl request to get the HW addressを発見。ここの08-12-2003のコードでうまくいった。 #include <arpa/inet.h> #include <errno.h> #include <linux/if_ether.h> #include <net/if.h> // ifr #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/ioctl.h> //</sys/ioctl.h></string.h></stdlib.h></stdio.h></net/if.h></linux/if_ether.h></errno.h></arpa/inet.h>…

NIC の MAC address を取得するも失敗

C

TCP や UDP の Socket は一通り書いてみたので、今度は RawSocket に挑戦したい。 TCP や UDP では、L2 や L3 のヘッダはおろか、TCP のヘッダも完全にお任せ。意識するのは Payload のみでよかった。だが、RawSocket ではそうも行かない。手始めに指定した …