Perlスクリプトの説明
戻る
※UNIXコマンドの解説も諸処で入れていますが、基本的にはシェルに精通しているという前提で書いています。ls,cp,mv,catなど基本コマンドは押さえておいて下さい。
まず、手始めにMecabを動かしてみます。
ログインしたら、時刻合わせとオートログアウト防止を兼ねて./vmtimeを実行しておきます。(デフォルトでは、60分間入力がないとログアウトするようになっています。これを防止するために、set autologout=0を入力しますが、./vmtimeにそのスクリプトも入れてあります。詳しくは、cat vmtime で見て下さい)

Mecabが動くことを確認したら、ディレクトリを移ります。将来のCGI化を考え、別ディレクトリにしていました。(今思えばよけいな気もする)
cd owl_cna/cgi-binで、owl_cna/cgi-binへ移って下さい。
ディレクトリ:
ex/ :text_from_html.plの結果格納
http/ :http_get.plの結果格納
result/ :term_disc.plの結果格納
url_list/ :URLリストの格納
Perlスクリプト
http_get.pl :URLリストからWebにアクセスしてファイルへ落とす。
text_from_html.pl :Webから落としたファイルから用語説明部分を切り出す。
term_disc.pl :抽出ファイルから知識獲得を行う。
list_term.pl :用語説明ファイルから文章解析を行う。
設定ファイル
term.txt :用語説明ファイル
term_out.txt :用語説明文章を解析したファイル
1:Yahoo!から検索結果を取得
まず、Yahoo!検索エンジンの外部利用CGIを開きます。Enter search wordに、検索する用語を入れ、下のsendボタンを押します。Startは空でかまいません。

Yahoo!へアクセスし、1〜100件の検索結果が返ってきます。結果をスクロールし、下の方のURLのところにあるURLリストをすべてテキストエディタにでもコピペして下さい。

コピペしたら、画面上の方の、リンクNextを押します。そうすると、現在の結果から+100した分(例えば、101件から200件まで)の結果を取得します。

この結果のURLを先ほどのコピペ分に追加し、またNextを……という感じで、500件分データを取得します。
取得できたら、適当な名前を付けて(例:mac_address.txt)これをFTPツールでVMwareの ochi/owl_cna/cgi-bin/url_list ディレクトリに保存します。
2.HTMLの取得
いよいよファイルから内容を取得します。
http_get.plを使用します。コマンドでの使い方は、
perl http_get.pl [URLファイル] [開始] [終了] [プロキシの有無]
です。500件取得したので終了は500ですが、練習の時は100程度でもかまいません。一つずつURLにアクセスするので、少々時間がかかります。プロキシは、VMware上からは関係ないので、nofwとしてください。何も入れてない場合は、広国大のプロキシに接続されるので注意して下さい。
例:perl http_get.pl url_list/mac_address.txt 1 500 nofw
スクリプトを入力すると、file head ->と出ます。ここで、ヘッダを入力します。例えばmacaddressと入力すると、URLの1件目は、mac_address_1.txt、2件目はmac_address_2.txtという具合に、それぞれヘッダとn件目というファイル名が付いて、httpディレクトリに格納されます。

ちゃんとファイルが作られているかは、例えば ls http/macaddress* としてみるとファイルリストが取得できて確認できるでしょう。
3.用語説明ファイルの作成と解析
※すでに、term.txtとterm_out.txtが存在しますが、これらは適当に名前を変えておいて、自分でまず作ってみて下さい。
ファイル名の変更:
mv term.txt _term.txt
mv term_out.txt _term_out.txt
IT用語辞典から用語説明をコピペします。そのとき、用語名を[]でくくり、その後に説明を貼り付けます。(先ほど名前を変えた_term.txtを参照して下さい)一応、↓例
[MACアドレス]
各Ethernetカードに固有のID番号。全世界のEthernetカードには1枚1枚固有の番号が割り当てられており、これを元にカード間のデータの送受信が行われる。IEEEが管理・割り当てをしている各メーカーごとに固有な番号と、メーカーが独自に各カードに割り当てる番号の組み合わせによって表される。
この内容でファイルを保存しますが、必ず漢字コードをEUCで保存します。EUCに対応したエディタ(秀丸、MKeditor、TeraPadなどの有名エディタはたいてい対応)を必ず使うこと。保存したら、これをVMwareへFTPで転送しておきます。
次に、term.txtの内容を解析します。
perl list_term.pl term.txt
を実行します。そうすると、先ほどのterm.txtに書かれた用語の羅列が出るので、番号で選んで下さい。1つしかなければそれしかないので、その番号を入力して下さい。ちょっとWebにアクセスして、解析が始まります。(少し時間がかかります)
終わると、term_out.txt(このファイル名はスクリプト中で指定済)に解析結果が書き出されます。

4.解析結果を使ってHTMLから抽出
ここでは、スクリプト text_from_html.pl を使いますが、渡したVMwareに入っているものはちょっと古かったので、最新版をここに置いておきます。zip圧縮なので、解凍して転送しておいてください。
text_from_html.pl新バージョン(zip圧縮)
このスクリプトは、[HTMLファイルのヘッダ名] [開始位置] [終了位置] [書き出しファイル名] の4つを引数に持ちます。ここまでの例で通せば、以下のようになります。
perl text_from_html.pl http/macaddress 1 500 ex/macaddress.txt
スクリプトが起動すると、Please input term --> と出るので、用語名を直接入力します。その後、term_out.txtの該当内容が出力され、解析・抽出処理が始まります。ファイル数によっては、数分かかりますが、気長に待って下さい。ハングアップしたかな〜??と思っていると、突然finishが出て終了します。

指定した書き出しファイル(ここでは、exディレクトリのmacaddress.txt)を試しに見てみましょう。ほぼ、指定した用語についての説明書きが取得できているはずです。
5.抽出ファイルから知識抽出を行う
いよいよ最後です。
perl term_disc.pl [text_from_html.plの書き出しファイル]
を実行します。(例えば、perl term_disc.pl ex/maccadress.txt)
ここから、しばらくログを貼り付けます。要所要所に太字の赤で解説を入れますので参考にして、同じようにやってみてください。
ochi@~/owl_cna/cgi-bin $ perl term_disc.pl ex/mac.txt
Please input term --> MACアドレス
[MACアドレス]
1枚1枚固有,0.000352777777777778
世界,0.00611702127659574
管理,0.00612903225806452
元,0.00823529411764706
メーカー,0.00903688524590164
カード,0.00907801418439716
独自,0.0113586956521739
データ,0.0121374045801527
組み合わせ,0.0125405405405405
番号,0.0222857142857143
固有,0.0371100164203612
送受信,0.0458432304038005
割り当て,0.0664921465968586
IEEE,0.072093023255814
Ethernetカード,0.398048780487805
ID番号,0.634005763688761
カード間,1.19060052219321
メーカーごと,1.70247933884298
Ave:0.249643776576974
File Read Finish!
Now, word extract from descriptive text...
Please just moment...
※抽出されている全文章に大して、
単語の用語リストを作成する。しばらく処理に時間がかかる。
9672 : メーカーごと : 11
9765 : 1枚1枚固有 : 14
9772 : カード間 : 14
9906 : 組み合わせ : 22
9968 : 独自 : 28
9969 : 割り当て : 28
9986 : ID番号 : 29
10012 : カード : 34
10044 : Ethernetカード : 43
10063 : 送受信 : 49
10079 : 元 : 60
10080 : メーカー : 61
10091 : 世界 : 67
10093 : IEEE : 69
10119 : 固有 : 99
10131 : 番号 : 156
10137 : 管理 : 174
10146 : データ : 426
10150,MACアドレス,2373
10149,IPアドレス,674
10148,場合,476
10147,設定,462
10146,データ,426
10145,接続,332
10144,表示,266
10143,登録,264
10142,送信,256
10141,アドレス,232
10140,必要,218
10139,パソコン,191
10138,確認,180
10137,管理,174
10136,ネットワーク,173
10135,使用,173
10134,ルータ,167
10133,通信,164
10132,利用,157
10131,番号,156
[] ※ここで、用語「MACアドレス」を表すのに
最も適した単語の番号を入力する。
重要な単語を選択します。入力して下さい。(exit "0000",clear "*") -> 10131
番号
9672 : メーカーごと : 11
9765 : 1枚1枚固有 : 14
9772 : カード間 : 14
9906 : 組み合わせ : 22
9968 : 独自 : 28
9969 : 割り当て : 28
9986 : ID番号 : 29
10012 : カード : 34
10044 : Ethernetカード : 43
10063 : 送受信 : 49
10079 : 元 : 60
10080 : メーカー : 61
10091 : 世界 : 67
10093 : IEEE : 69
10119 : 固有 : 99
10131 : 番号 : 156
10137 : 管理 : 174
10146 : データ : 426
10150,MACアドレス,2373
10149,IPアドレス,674
10148,場合,476
10147,設定,462
10146,データ,426
10145,接続,332
10144,表示,266
10143,登録,264
10142,送信,256
10141,アドレス,232
10140,必要,218
10139,パソコン,191
10138,確認,180
10137,管理,174
10136,ネットワーク,173
10135,使用,173
10134,ルータ,167
10133,通信,164
10132,利用,157
10131,番号,156
[番号] ※先ほど選択した言葉が左に出ている。
もう一度リストが出てくるが、1つだけ選択するので、ここでは「0000」を入力する。
重要な単語を選択します。入力して下さい。(exit "0000",clear "*") -> 0000
Your selection is,
番号
10150,MACアドレス,2373
10149,IPアドレス,674
10148,場合,476
10147,設定,462
10146,データ,426
10145,接続,332
10144,表示,266
10143,登録,264
10142,送信,256
10141,アドレス,232
10140,必要,218
10139,パソコン,191
10138,確認,180
10137,管理,174
10136,ネットワーク,173
10135,使用,173
10134,ルータ,167
10133,通信,164
10132,利用,157
10131,番号,156
Now, search collocation. ....
※ここから、さきほど選択した「番号」に対して
さらに絞り込んだ文章抽出を行う。
同時に係り受け検索・文節抽出も行うのでかなり重い。しばらく待つ。
sh: -c: line 0: unexpected EOF while looking for matching `''
sh: -c: line 1: syntax error: unexpected end of file
sh: -c: line 0: unexpected EOF while looking for matching `''
sh: -c: line 1: syntax error: unexpected end of file
: 2
電話番号 : 2
機器識別番号」です。 : 2
UDPポート番号を : 2
内線番号は : 2
識別番号が : 2
番号付けを : 2
番号は : 2
ID番号。 : 2
識別番号を : 2
LANA番号の : 2
3バイト=シリアル番号。 : 2
ID番号の : 2
3 ポート番号113 AUTHは : 2
番号。 : 3
シーケンス番号を : 3
識別番号の : 3
郵便番号検索 : 3
ID番号です。 : 3
LANA番号を : 3
エントリ番号1に : 3
元TCPポート番号 : 3
あて先TCPポート番号 : 3
LANA番号が : 3
ポート番号は : 3
番号で : 4
エントリ番号 : 4
送信元TCPポート番号 : 4
ポート番号 : 4
ID番号を : 5
あて先TCPポート番号、 : 5
番号で、 : 6
番号に : 6
番号と : 6
番号 : 6
ポート番号の : 6
識別番号。 : 7
シリアル番号 : 7
ポート番号を : 8
エントリ番号を : 9
番号です。 : 11
番号の : 11
番号を : 12
番号が : 21
##################
*第1共起リスト
0: :
1: : 2
2: MACアドレスの : 2
3: ための : 2
4: 固有な : 2
5: (16ビット) : 2
6: NIC固有の : 2
7: (TCPポート番号17276)+ : 2
8: 電話番号 : 2
9: 管理する : 2
10: 割り当てられた : 2
11: いろいろな : 2
12: 場合、 : 2
13: パソコンの : 2
14: ア あて先IPアドレス、 : 2
15: つけられている : 2
16: 編集する : 2
17: 1つの : 2
18: MACアドレスという : 2
19: MACアドレス、 : 2
20: 応じ : 2
21: 自らの : 2
22: あて先IPアドレス、 : 2
23: IPアドレスと : 2
24: 装置の : 2
25: 割り当てられている : 2
26: 例えば、 : 2
27: 禁止する : 2
28: (32bit) : 2
29: X0(LAN)SonicWALLの : 2
30: (画面は、 : 3
31: 郵便番号検索 : 3
32: その : 3
33: イ あて先IPアドレス、 : 3
34: 複数の : 3
35: アドレスや : 3
36: 元TCPポート番号 : 3
37: 削除したい : 3
38: 識別する : 3
39: LANSonicWALLの : 3
40: ・下位 : 3
41: ポート番号 : 3
42: 唯一の : 4
43: エントリ番号 : 4
44: 送信元IPアドレス、 : 4
45: 割り当てた : 4
46: ユニークな : 6
47: 割り振られた : 7
48: 割り当てる : 9
49: この : 9
50: 1枚固有の : 9
51: 固有の : 24
[]
ここで、先ほどの「番号」に結びつく言葉を選択する。
第1共起を選択します。入力して下さい。(exit "0000",clear "*") ->51
複数選択できるが、1つずつ入力し、またリストが出てきたら
次にまた入力する、というステップを踏む。
例として、51,48,47,46,42,6を選択した。
なお、間違えた場合は、「*」を入力すると選択結果を一度クリアできる。
※途中略※
[固有の,割り当てる,割り振られた,唯一の,ユニークな,NIC固有の]
選択し終わったら0000を入力
第1共起を選択します。入力して下さい。(exit "0000",clear "*") ->0000
collo about "固有の"
1: 固有の番号
2: 割り当てられる固有の番号
3: ある)ごとに割り当てられる固有の番号
4: こともある)ごとに割り当てられる固有の番号
5: 固有の番号を
6: それぞれ固有の番号を
7: 自社製品にそれぞれ固有の番号を
8: ネットワークベンダが自社製品にそれぞれ固有の番号を
9: 固有のID番号。
10: 各Ethernetカードに固有のID番号。
11: 同意。各Ethernetカードに固有のID番号。
12: Physical Address:MACアドレスと同意。各Ethernetカードに固有のID番号。
13: 固有の識別番号の
14: 持っている固有の識別番号の
15: それぞれ持っている固有の識別番号の
16: Ethernetカードがそれぞれ持っている固有の識別番号の
17: 固有の番号が
18: カードごとに固有の番号が
19: 番号で、カードごとに固有の番号が
20: の番号で、カードごとに固有の番号が
21: 固有の番号です。
22: 12桁の固有の番号です。
23: 設定されている12桁の固有の番号です。
24: 装置に設定されている12桁の固有の番号です。
25: 固有の識別番号であるが
26: 全世界的に固有の識別番号であるが
27: MACアドレスも全世界的に固有の識別番号であるが
28: ,MACアドレスも全世界的に固有の識別番号であるが
29: 固有の番号で、
30: LANボード)に固有の番号で、
31: ネットワークカード(LANカードとLANボード)に固有の番号で、
32: MACアドレスはネットワークカード(LANカードとLANボード)に固有の番号で、
33: 固有の番号で、
34: 設定されている固有の番号で、
35: (LANカード)に設定されている固有の番号で、
36: ネットワークアダプタ(LANカード)に設定されている固有の番号で、
37: 固有の番号と
38: ネットワークカードごとの固有の番号と
39: 24ビットがネットワークカードごとの固有の番号と
40: 後半の24ビットがネットワークカードごとの固有の番号と
41: 固有の識別番号の
42: 焼き込まれている固有の識別番号の
43: CD-ROMに焼き込まれている固有の識別番号の
44: 機器やCD-ROMに焼き込まれている固有の識別番号の
45: 固有の番号が
46: 各ネットワーク機器ごとに固有の番号が
47: 表され、各ネットワーク機器ごとに固有の番号が
48: 16進数数値で表され、各ネットワーク機器ごとに固有の番号が
49: 固有の番号で
50: 各部品に固有の番号で
51: MACアドレスは各部品に固有の番号で
52: ただし、MACアドレスは各部品に固有の番号で
53: 固有の番号)を
54: 割り当てられている固有の番号)を
55: 通信機器に割り当てられている固有の番号)を
56: (個々の通信機器に割り当てられている固有の番号)を
57: 固有のID番号です。
58: 各Ethernetカードに固有のID番号です。
59: MACアドレスとは、各Ethernetカードに固有のID番号です。
60: ID番号です。MACアドレスとは、各Ethernetカードに固有のID番号です。
61: 固有の機器番号が
62: ネットワークカード)には固有の機器番号が
63: ネットワーク機器(実際にはネットワークカード)には固有の機器番号が
64: 機器番号がネットワーク機器(実際にはネットワークカード)には固有の機器番号が
65: 固有の番号
66: 持つ固有の番号
67: 無線LANカード自身が持つ固有の番号
68: 個々の無線LANカード自身が持つ固有の番号
69: 固有のID番号の
70: 割り当てられている固有のID番号の
71: あらかじめ割り当てられている固有のID番号の
72: MACアドレス:ネットワーク機器にあらかじめ割り当てられている固有のID番号の
73: 固有の番号に
74: 割り当てる固有の番号に
75: ベンダが割り当てる固有の番号に
76: 3バイトはベンダが割り当てる固有の番号に
77: 固有の番号で、
78: 振られている固有の番号で、
79: その他機器など)ごとに振られている固有の番号で、
80: 無線LANカード、その他機器など)ごとに振られている固有の番号で、
81: 固有の番号
82: 持っている固有の番号
83: 子機が持っている固有の番号
84: 親機に子機が持っている固有の番号
85: 固有のID番号の
86: )の固有のID番号の
87: 各Ethernetカード(無線LANアダプタ含め)の固有のID番号の
88: ことです。各Ethernetカード(無線LANアダプタ含め)の固有のID番号の
89: 固有のID番号です。
90: 唯一無二の固有のID番号です。
91: 割り当てられる唯一無二の固有のID番号です。
92: 1台に割り当てられる唯一無二の固有のID番号です。
93: 固有の番号ですが、
94: つけられている固有の番号ですが、
95: 1枚につけられている固有の番号ですが、
96: 1枚1枚につけられている固有の番号ですが、
collo about "割り当てる"
97: 割り当てる番号の
98: 各カードに割り当てる番号の
99: 独自に各カードに割り当てる番号の
100: メーカーが独自に各カードに割り当てる番号の
101: 割り当てるシリアル番号
102: (メーカーが)割り当てるシリアル番号
103: ベンダー(メーカーが)割り当てるシリアル番号
104: シリアル番号 ベンダー(メーカーが)割り当てるシリアル番号
105: 割り当てる「製品番号」の
106: 自由に割り当てる「製品番号」の
107: 各メーカーが自由に割り当てる「製品番号」の
108: 「メーカーコード」と、各メーカーが自由に割り当てる「製品番号」の
109: 割り当てる番号の
110: 各カードに割り当てる番号の
111: 独自に各カードに割り当てる番号の
112: メーカーが独自に各カードに割り当てる番号の
113: 割り当てる番号の
114: 各カードに割り当てる番号の
115: 独自に各カードに割り当てる番号の
116: メーカーが独自に各カードに割り当てる番号の
117: 割り当てる番号の
118: 各カードに割り当てる番号の
119: 独自に各カードに割り当てる番号の
120: メーカーが独自に各カードに割り当てる番号の
121: 割り当てる番号の
122: 各カードに割り当てる番号の
123: 独自に各カードに割り当てる番号の
124: メーカーが独自に各カードに割り当てる番号の
125: 割り当てる番号の
126: 各カードに割り当てる番号の
127: 独自に各カードに割り当てる番号の
128: メーカーが独自に各カードに割り当てる番号の
129: 割り当てる番号で
130: できています。割り当てる番号で
131: 番号でできています。割り当てる番号で
132: 割り当てる番号でできています。割り当てる番号で
collo about "割り振られた"
133: 割り振られた識別番号。
134: 1台に割り振られた識別番号。
135: 1台1台に割り振られた識別番号。
136: コンピュータ1台1台に割り振られた識別番号。
137: 割り振られた識別番号。
138: 1台に割り振られた識別番号。
139: 1台1台に割り振られた識別番号。
140: コンピュータ1台1台に割り振られた識別番号。
141: 割り振られた識別番号。
142: 1台に割り振られた識別番号。
143: 1台1台に割り振られた識別番号。
144: コンピュータ1台1台に割り振られた識別番号。
145: 割り振られた識別番号。
146: 1台に割り振られた識別番号。
147: 1台1台に割り振られた識別番号。
148: コンピュータ1台1台に割り振られた識別番号。
149: 割り振られた識別番号。
150: 1台に割り振られた識別番号。
151: 1台1台に割り振られた識別番号。
152: コンピュータ1台1台に割り振られた識別番号。
153: 割り振られた識別番号。
154: 1台に割り振られた識別番号。
155: 1台1台に割り振られた識別番号。
156: コンピュータ1台1台に割り振られた識別番号。
157: 割り振られた識別番号の
158: 1台に割り振られた識別番号の
159: 1台1台に割り振られた識別番号の
160: コンピュータ1台1台に割り振られた識別番号の
collo about "唯一の"
161: 唯一の番号と
162: 世界中で唯一の番号と
163: MACアドレスは世界中で唯一の番号と
164: 原則として、MACアドレスは世界中で唯一の番号と
165: 唯一の番号です。
166: 世界で唯一の番号です。
167: 与えられた世界で唯一の番号です。
168: 呼ばれる)に与えられた世界で唯一の番号です。
169: 唯一の番号が
170: 世界で唯一の番号が
171: 機器は世界で唯一の番号が
172: 一つの機器は世界で唯一の番号が
173: 唯一の番号と
174: 世界で唯一の番号と
175: MACアドレスは世界で唯一の番号と
176: 必須です。 MACアドレスは世界で唯一の番号と
collo about "ユニークな"
177: ユニークな番号です。では
178: ないユニークな番号です。では
179: 1つしかないユニークな番号です。では
180: 世界に1つしかないユニークな番号です。では
181: ユニークな番号と
182: なくユニークな番号と
183: ことがなくユニークな番号と
184: 重複することがなくユニークな番号と
185: ユニークな識別番号である
186: 48bitsでのユニークな識別番号である
187: 数値です。48bitsでのユニークな識別番号である
188: 管理されている数値です。48bitsでのユニークな識別番号である
189: ユニークな番号の
190: 設定されているユニークな番号の
191: ネットワーク機器に設定されているユニークな番号の
192: 全てのネットワーク機器に設定されているユニークな番号の
193: ユニークな番号です、
194: ないユニークな番号です、
195: ひとつしかないユニークな番号です、
196: あり世界中にひとつしかないユニークな番号です、
197: ユニークな番号に
198: ないユニークな番号に
199: 1つしかないユニークな番号に
200: 世界中に1つしかないユニークな番号に
collo about "NIC固有の"
201: NIC固有の番号である
202: ここでは、NIC固有の番号である
203: 説明します。ここでは、NIC固有の番号である
204: IPアドレスについて説明します。ここでは、NIC固有の番号である
205: NIC固有の番号です。
206: 構成されるNIC固有の番号です。
207: 並んでいる)で構成されるNIC固有の番号です。
208: 6個並んでいる)で構成されるNIC固有の番号です。
select sentence(ex:1 2 5 7) ->
※選択した共起単語それぞれの文章が表示される。
選択した順番によるので、表示される順番はこの通りでない場合もある。
このリストから、「MACアドレス」を説明する、学習問題に対する選択肢として
使えそうなものを複数選ぶ。
なお、ここでの選択はスペースで区切って入力できる。例えば、
select sentence(ex:1 2 5 7) ->210 205 186 156 10 22 58
とする。
select sentence(ex:1 2 5 7) -> 210 205 186 156 10 22 58
210,205,186,156,10,22,58
NIC固有の_番号です。
48bitsでの_ユニークな_識別番号である
コンピュータ_1台_1台に_割り振られた_識別番号。
各Ethernetカードに_固有の_ID番号。
12桁の_固有の_番号です。
各Ethernetカードに_固有の_ID番号です。
back collo...
collo about "固有の"
collo about "割り当てる"
collo about "割り振られた"
collo about "唯一の"
collo about "ユニークな"
collo about "NIC固有の"
Search Templete....
0:世界中で唯一の番号となる
2:48bit(6bytes)であり
3:このうち先頭の3bytesには、IEEEが管理しているネットワーク機器のベンダコード(メーカーを一意に識別できるコード)が割り当てられ
4:残り3bytesには、ネットワークベンダが自社製品にそれぞれ固有の番号を割り当てる
5:このためある製品に割り当てられたMACアドレスは、世界にただ1つしかなく
6:同じMACアドレスを持つ製品は存在しないことが保証されている
8:世界にただ1つしかなく
9:同じMACアドレスを持つ製品は存在しないことが保証されている
11:ネットワーク上で端末を特定するために利用され
12:IPアドレスと同様に重要なものだが
13:ユーザーが自分で設定したりする性質のものではないため
14:一般的なネットワーク利用においてはそれほど意識する必要はない
15:ただし
16:無線LANの利用において
17:アクセスポイントへのアクセスに対してMACアドレスでアクセス制限をかけることはセキュリティ上重要なポイントとなっている
18:48ビットの固定長からなっています
19:そのうち
20:上位3バイトの24ビットは、製造メーカ識別子となっていまして
21:IEEEによってコード化されたNICベンダ【NetworkInterfaceCard】ごとの一意な番号となっています
22:そして
23:下位3バイトはそのメーカで製品ごとの製造番号が割り振られているのです
24:「ネットワーク機器」を識別する番号と理解しておいて下さい
27:そのコンピュータ固有の番号の事(Macintoshでは、ハードウェアアドレスがそれにあたる)であり
28:同じ番号は他に存在しません
29:また
30:Macintoshだけが持つ番号ではなく
31:すべてのコンピュータがこの番号を持っています
32:各ネットワーク機器に固有の一意な値である
35:IEEEが管理して
36:メーカーごとに別々の値を割り当てる「メーカーコード」と
37:各メーカーが自由に割り当てる「製品番号」の2つの部分の組み合わせで構成されています
38:このため
39:MACアドレスは世界に唯一の固有(ユニーク)な識別コードになります
40:世界に唯一の固有(ユニーク)な識別コードになります
42:「NetworkInterfaceCard(NIC)に個別に割り当てられた機器識別番号」です
44:アルファベットを含む12桁の番号です
45:(16進法で表示され数字の0〜9
46:アルファベットのA〜Fまで
47:前半の6桁がそのボードなどを作ったメーカーの番号
48:後半の6桁が各メーカーがそのボードなどに割り振った番号です)本体にはMACアドレス以外に製造番号
49:シリアルナンバー(S/N)なども記載されている場合がありますので
50:間違えないようご注意ください
51:ROM(ロム)に書き込まれていて
52:勝手に変更できない
54:重複することがなくユニークな番号となっています
55:EthernetはこのMACアドレスをもとにしてデータの送受信を行います
56:ユニークな一意のものであることが期待されているため
57:同一ネットワーク上に重複するMACアドレスがあると正常に通信できません
58:通常MACアドレスは6Bytes(16進12文字)のうち上位3Bytesが機器の製造メーカーに割り当てられ
59:下位3BytesはLANカードの製造メーカーによって管理されている数値です
60:48bitsでのユニークな識別番号であるため
61:通常は重複がありえませんので
62:重複すると数々の不具合が発生する可能性があります
63:6Bytes(16進12文字)のうち上位3Bytesが機器の製造メーカーに割り当てられ
64:下位3BytesはLANカードの製造メーカーによって管理されている数値です
65:48bitsでのユニークな識別番号であるため
66:通常は重複がありえませんので
67:重複すると数々の不具合が発生する可能性があります
68:MACアドレスを変更する際にはよく注意してください
69:16進数数値で表され
70:各ネットワーク機器ごとに固有の番号が割り振られています
72:世界で固有(unique)な番号となります
74:「NetworkInterfaceCard(NIC)に個別に割り当てられた機器識別番号」です
76:48bitの数値で
77:通常は"11:22:33:44:55:66"というふうに2桁の16進数を":"で区切って表示する
78:上位24bitはベンダーコードと呼ばれ
79:IEEEによって各ハードウェアベンダーに割り振られている
80:下位24bitは各ベンダーが(重複のないように)任意に割り振った数値となっている
81:アルファベットを含む12桁の番号です
82:(16進法で表示され数字の0〜9
83:アルファベットのA〜Fまで
84:前半の6桁がそのボードなどを作ったメーカーの番号
85:後半の6桁が各メーカーがそのボードなどに割り振った番号です)本体にはMACアドレス以外に製造番号
86:シリアルナンバー(S/N)なども記載されている場合がありますので
87:間違えないようご注意ください
88:存在しません
89:この性質を利用してネットワークに接続するパソコンはネットワーク上ではLANボード(LANカード)のMACアドレスが事実上パソコンの識別番号とみなされます
90:又MACアドレスで個々のパソコンを特定できるため
91:無線LANなどのセキュリティー対策にも利用されます
93:各Ethernetカードやルーターなど通信機器の固有のID番号のことをいいます
94:世界中のEthernetカード
95:通信機器にはそれぞれに個別の番号が割り当てられており
96:このIDを元に各通信機器間のデータの送受信が行われます
97:通常
98:16進法で「00-00-00-XX-XX-XX」といった方式になっている
99:そして前半の6桁(00の部分)が
100:その部品(LANボードなど)を作ったメーカーの番号
101:後半の6桁(XXの部分)は、各メーカーがその部品に割り振った番号になる
102:各部品に固有の番号で変更できない
105:IPアドレスはシステム管理者などが状況に合わせて設定する
106:もちろん
107:それぞれ役割の違いがある
108:いずれも、このどれかで始まるというわけです
109:他のベンダーの機器は異なるIDで始まりますから
110:あとはXeroxが内部で番号付けを失敗しない限り
111:同じMACアドレスを持つ機器が複数出回ることはない
112:というわけです
113:同じなので
114:適当なLANA番号を指定しても構いません
117:全てのネットワーク機器が個々に持つ
118:世界で1つの番号です
119:このMACアドレスの特長を利用して
122:各Ethernetカードに固有のID番号です
125:LANカード(ネットワークカード)固有の番号のこと
128:前半半分がメーカーのコード番号
129:後半半分が機器固有の英数字となります
132:各Ethernetカードに固有のID番号です
133:全世界のEthernetカードには1枚1枚固有の番号が割り当てられており
134:これを元にカード間のデータの送受信が行われます
137:全てのネットワーク機器が個々に持つ世界で1つの番号です
138:このMACアドレスの特徴を利用して
139:アクセスポイント側で
140:アクセスを許可する無線端末を管理することができます
141:しかし
142:この機能は、仮に登録されているMACアドレス情報が漏洩すると
143:悪意の第三者が偽装(なりすまし)して
144:不正アクセスするという危険性も指摘されています
146:ハードウェアに対して番号が振られているのですが
147:実は
148:Macアドレスをソフトウェア的に「なりすまし」することが可能なんです
149:だからもし
150:ステーション側で接続許可しているMACアドレスが犯人にばれてしまっていたら
151:MACアドレスフィルタリングは無意味になってしまいます
152:一枚一枚のNICに焼き付けられた固有の数値で48ビットあり世界中にひとつしかないユニークな番号です
156:無線LANやEthernetなどのネットワーク機器に割り振られた固有の番号(英数字)のことで
157:同一製品であっても製造番号のように異なった番号になっています
158:無線LANカードであれば
159:たいてい裏面にシールに書いて貼ってあります
160:最初から無線LAN機能を内蔵したノートパソコン等の場合は、画面上で呼び出して調べられたりします
162:製造者番号と製造番号から成っており
163:世界中で一意になるように決定されています
165:それぞれのPCに対して固有の(世界で唯一の)番号で他の人と重複することはありません
166:(注:厳密にはPCではなくNICに対して固有です)
167:何ですか
168:何故「44-45-53....」という番号はダメなのですか?
169:「MediaAccessControlAddress」の略で
170:「ネットワークインターフェース」ごとに16進数の12桁で付番されている固有の番号のことです
171:(前半6桁がメーカ番号
172:後半6桁がメーカー内シリアル番号からなっています)
173:世界で唯一の番号となっており
174:総合情報処理
175:におけるキャンパスネット管理に用いられるので
176:申請上必須です
178:ネットワークカード1枚1枚につけられている固有の番号ですが
179:DSLサービスの工事をするにあたって
180:MACアドレスを登録して
181:その登録したカードを使うように言われることがあります
182:これはどういうことかと言うと
183:登録したパソコンでしかDSLに接続できないことになります
184:セコイ話ですが
続いて、違う方法でまた文章抽出を行っている。
ここでも同様に、ふさわしいものを複数、スペースで区切って選択する。
select sentence-> 18 21 32 55 74 81 152
48ビットの固定長からなっています
IEEEによってコード化されたNICベンダ【NetworkInterfaceCard】ごとの一意な番号となっています
各ネットワーク機器に固有の一意な値である
EthernetはこのMACアドレスをもとにしてデータの送受信を行います
「NetworkInterfaceCard(NIC)に個別に割り当てられた機器識別番号」です
アルファベットを含む12桁の番号です
一枚一枚のNICに焼き付けられた固有の数値で48ビットあり世界中にひとつしかないユニークな番号です
===================================
selection sentence:
NIC固有の_番号です。
48bitsでの_ユニークな_識別番号である
コンピュータ_1台_1台に_割り振られた_識別番号。
各Ethernetカードに_固有の_ID番号。
12桁の_固有の_番号です。
各Ethernetカードに_固有の_ID番号です。
sentence from templete:
48ビットの_固定長から_なっています
IEEEによって_コード化された_NICベンダ_【NetworkInterfaceCard】ごとの_一意な_番号と_なっています
各ネットワーク機器に_固有の_一意な_値である
Ethernetは_この_MACアドレスを_もとに_して_データの_送受信を_行います
「NetworkInterfaceCard_(NIC)に_個別に_割り当てられた_機器識別番号」です
アルファベットを_含む_12桁の_番号です
一枚_一枚の_NICに_焼き付けられた_固有の_数値で_48ビット_あり世界中に_ひとつしか_ない_ユニークな_番号です
===================================
最後に、選択した文章がずらずらと表示されて終わりです。
noを入れると、スクリプトは終了します。
何かファイル名を入れると、これらの文章がそのファイルに保存されます。
保存しますか?(filename or no)
以上が term_disc.pl の処理です。
何度か試してみて下さい。
課題(というほどでもないが)
・NIC
・ルーティング
・TCP
・UDP
・RIP
・FTP
・DNS
・P2P
・W3C
上記用語は適当に書いてみました。これらを検索し、term.txtに説明を追加し、term_disc.plで処理して、という感じで実際にやってみてください。処理の詳しいことは、perlスクリプトを見てもらえばいいんですが(ソースはめちゃめちゃ汚いです)もっと詳しい説明をして欲しいときは言って下さい。
by 越智 徹
連絡先
メール:t-ochi@it.hirokoku-u.ac.jp
研究室TEL:0823-73-8226(相部屋のため呼び出し)