doc/ja_JP.eucJP/man/man5/ipsend.5
Kazuo Horikawa f6ffff974d Remove whitespace at eol.
Remove extraneous .Pp before and/or after .Sh.
2001-07-29 05:15:42 +00:00

416 lines
13 KiB
Groff

.\" $FreeBSD: doc/ja_JP.eucJP/man/man5/ipsend.5,v 1.3 2001/05/14 01:09:29 horikawa Exp $
.TH IPSEND 5
.\"
.\" WORD: source 始点[IP]
.\" WORD: destination 終点[IP]
.\" WORD: route 経路[IP]
.\"
.SH 名称
ipsend \- IP パケット記述言語
.SH 解説
\fBipsend\fP プログラムは、\fB-L\fP オプションが付くと、以下の文法に
適合するテキストファイルを入力として期待します。この文法の目的は、
IP パケットを任意の方法でカプセル化可能とする限り、
任意の方法で IP パケットを指定することにあります。
.SH 文法
.LP
.nf
line ::= iface | arp | send | defrouter | ipv4line .
iface ::= ifhdr "{" ifaceopts "}" ";" .
ifhdr ::= "interface" | "iface" .
ifaceopts ::= "ifname" name | "mtu" mtu | "v4addr" ipaddr |
"eaddr" eaddr .
send ::= "send" ";" | "send" "{" sendbodyopts "}" ";" .
sendbodyopts ::= sendbody [ sendbodyopts ] .
sendbody ::= "ifname" name | "via" ipaddr .
defrouter ::= "router" ipaddr .
arp ::= "arp" "{" arpbodyopts "}" ";" .
arpbodyopts ::= arpbody [ arpbodyopts ] .
arpbody ::= "v4addr" ipaddr | "eaddr" eaddr .
bodyline ::= ipv4line | tcpline | udpline | icmpline | dataline .
ipv4line ::= "ipv4" "{" ipv4bodyopts "}" ";" .
ipv4bodyopts ::= ipv4body [ ipv4bodyopts ] | bodyline .
ipv4body ::= "proto" protocol | "src" ipaddr | "dst" ipaddr |
"off" number | "v" number | "hl" number| "id" number |
"ttl" number | "tos" number | "sum" number | "len" number |
"opt" "{" ipv4optlist "}" ";" .
ipv4optlist ::= ipv4option [ ipv4optlist ] .
ipv4optlist = "nop" | "rr" | "zsu" | "mtup" | "mtur" | "encode" | "ts" |
"tr" | "sec" | "lsrr" | "e-sec" | "cipso" | "satid" |
"ssrr" | "addext" | "visa" | "imitd" | "eip" | "finn" |
"secclass" ipv4secclass.
ipv4secclass := "unclass" | "confid" | "reserv-1" | "reserv-2" |
"reserv-3" | "reserv-4" | "secret" | "topsecret" .
tcpline ::= "tcp" "{" tcpbodyopts "}" ";" .
tcpbodyopts ::= tcpbody [ tcpbodyopts ] | bodyline .
tcpbody ::= "sport" port | "dport" port | "seq" number | "ack" number |
"off" number | "urp" number | "win" number | "sum" number |
"flags" tcpflags | data .
udpline ::= "udp" "{" udpbodyopts "}" ";" .
udpbodyopts ::= udpbody [ udpbodyopts ] | bodyline .
udpbody ::= "sport" port | "dport" port | "len" number | "sum" number |
data .
icmpline ::= "icmp" "{" icmpbodyopts "}" ";" .
icmpbodyopts ::= icmpbody [ icmpbodyopts ] | bodyline .
icmpbody ::= "type" icmptype [ "code" icmpcode ] .
icmptype ::= "echorep" | "echorep" "{" echoopts "}" ";" | "unreach" |
"unreach" "{" unreachtype "}" ";" | "squench" | "redir" |
"redir" "{" redirtype "}" ";" | "echo" "{" echoopts "}" ";" |
"echo" | "routerad" | "routersol" | "timex" |
"timex" "{" timextype "}" ";" | "paramprob" |
"paramprob" "{" parapptype "}" ";" | "timest" | "timestrep" |
"inforeq" | "inforep" | "maskreq" | "maskrep" .
echoopts ::= echoopts [ icmpechoopts ] .
unreachtype ::= "net-unr" | "host-unr" | "proto-unr" | "port-unr" |
"needfrag" | "srcfail" | "net-unk" | "host-unk" | "isolate" |
"net-prohib" | "host-prohib" | "net-tos" | "host-tos" |
"filter-prohib" | "host-preced" | "cutoff-preced" .
redirtype ::= "net-redir" | "host-redir" | "tos-net-redir" |
"tos-host-redir" .
timextype ::= "intrans" | "reass" .
paramptype ::= "optabsent" .
data ::= "data" "{" databodyopts "}" ";" .
databodyopts ::= "len" number | "value" string | "file" filename .
icmpechoopts ::= "icmpseq" number | "icmpid" number .
.fi
.SH コマンド
.PP
パケットの送信や、パケットの定義の前に、
送信する際に用いるインタフェースを記述する必要があります。
.TP
.B interface
これは、ネットワークインタフェースを記述するために用います。ここに
含まれる記述では、オペレーティングシステムが採用している実際の
コンフィギュレーションと一致させる必要はありません。
.TP
.B send
これは、実際にネットワークを越えてパケットを送信するために用います。
終点が指定されない場合、そのネットワークに、ルーティングなしで終点に
向けて直接パケットを送出します。
.TP
.B router
これは、ipsend が使うデフォルトルータを、カーネルが扱うデフォルト経路と
は別に指定します。
.TP
.B ipv4
これは (バージョン 4 の) IP パケットを記述します。IP ヘッダフィールドを、
オプションも含めて、さらに先のプロトコルヘッダを含むデータセクションを
続けて指定することも出来ます。
.SH IPV4
.TP
.B hl <number>
これは、手動で IP ヘッダ長を指定します (IP オプションの存在に
より自動的に修正されます。デフォルトは 5)。
.TP
.B v <number>
IP バージョンを設定します。デフォルトは 4 です。
.TP
.B tos <number>
これは、サービスの型 (Type Of Service, TOS) を設定します。
デフォルトは 0 です。
.TP
.B len <number>
IP パケットの長さを手動で指定します。データやプロトコルヘッダを
収容できるように、長さは自動的に調整されます。
.TP
.B off <number>
これは、IP パケットのフラグメントオフセットフィールドの値を設定します。
デフォルトは 0 です。
.TP
.B ttl <number>
これは IP ヘッダの生存時間 (Time To Live, TTL) フィールドを設定します。
デフォルトは 60 です。
.TP
.B proto <protocol>
これは IP ヘッダのプロトコルフィールドを設定します。protocol は、
\fB/etc/protocols\fP に存在する数字または名前が使えます。
.TP
.B sum
手動で IP ヘッダのチェックサムを設定します。これを設定しない (0) ままだと、
送信前に計算されます。
.TP
.B src
手動で IP ヘッダの始点アドレスを指定します。これを設定しないままだと、
ホストの IP アドレスをデフォルトとします。
.TP
.B dst
これは、IP パケットの終点を設定します。デフォルトは 0.0.0.0 です。
.TP
.B opt
これは、IP ヘッダの IP オプションを指定するために用います。
.TP
.B tcp
これは、TCP プロトコルヘッダが後続することを示すために用います。TCP ヘッダの
オプションについては、\fBTCP\fP を参照してください。
.TP
.B udp
これは、UDP プロトコルヘッダが後続することを示すために用います。UDP ヘッダの
オプションについては、\fBUDP\fP の節を参照してください。
.TP
.B icmp
これは、ICMP プロトコルヘッダが後続することを示すために用います。ICMP ヘッダの
オプションについては、\fBICMP\fP の節を参考にしてください。
.TP
.B data
これは、IP パケットに生データが含まれることを示すために用います。指定可能な
オプションの詳細については、\fBデータ\fP の節を参考にして下さい。
.SH "IPv4 のオプション"
これらのキーワードは、対応する IP オプションを IP ヘッダに追加すべき
ことを表します (このときヘッダ長フィールドは適切に調節されます)。
.TP
.B nop
無動作 (No Operation) [RFC 791] (埋め草として使います)。
.TP
.B rr <number>
経路記録 (Record Router) [RFC 791]。与えられた番号は、情報を保持するのに
用いる領域の \fBバイト\fP 数を指定します。ちゃんと動作させるには、この値は
4 の倍数に指定しておく必要があります。
.TP
.B zsu
測定実験 (Experimental Measurement)。
.TP
.B mtup [RFC 1191].
最大転送単位 (Maximum Transmission Unit, MTU) 探査 (MTU Probe)。
.TP
.B mtur [RFC 1191].
最大転送単位レディ (MTU Ready)。
.TP
.B encode
.TP
.B ts
タイムスタンプ (Timestamp) [RFC 791]。
.TP
.B tr
経路追跡 (Traceroute) [RFC 1393]。
.TP
.B "sec-class <security-level>, sec"
セキュリティ (Security) [RFC1108]。このオプションはパケットのセキュリティ
レベルを指定します。
\fBsec\fP はセキュリティオプションの枠組みを設定しますが、
\fBsec-class\fP を指定しないとレベルは設定されないままとなります。
.TP
.B "lsrr <ip-address>"
厳密でない始点経路制御 (Loose Source Route) [RFC 791]。
.TP
.B e-sec
拡張セキュリティ (Extended Security) [RFC 1108]。
.TP
.B cipso
商用セキュリティ (Commercial Security)。
.TP
.B satid
ストリーム ID [RFC 791]。
.TP
.B "ssrr <ip-address>"
厳密な始点経路制御 [RFC 791]。
.TP
.B addext
アドレス拡張 (Address Extension)。
.TP
.B visa
実験的アクセス制御 (Experimental Access Control)。
.TP
.B imitd
IMI 流量記述子 (IMI Traffic Descriptor)。
.TP
.B eip
[RFC 1358]。
.TP
.B finn
実験的フロー制御 (Experimental Flow Control)。
.SH TCP
.TP
.B sport <port>
始点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。
.TP
.B dport <port>
終点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。
.TP
.B seq <number>
シーケンス番号を指定した数で設定します。デフォルトは 0 です。
.TP
.B ack <number>
応答番号を指定した数で設定します。デフォルトは 0 です。
.TP
.B off <number>
データ先頭からのオフセット値を指定した数で設定します。つまり TCP
ヘッダの大きさを意味します。TCP オプションが含まれる場合、この値は自動
的に修正されます。デフォルトは 5 です。
.TP
.B urp <number>
緊急データポインタの値を指定した数で設定します。デフォルトは 0 です。
.TP
.B win <number>
TCP ウィンドウの大きさを指定した数で設定します。デフォルトは 4096 です。
.TP
.B sum <number>
TCP 疑似ヘッダとデータに対するチェックサムを手動で指定します。特に設定
しなければ、デフォルトの 0 になり、自動的に計算されます。
.TP
.B flags <tcp-flags>
指定したフラグに一致する TCP フラグフィールドが設定されます。有効な
フラグは、"S" (SYN), "A" (ACK), "R" (RST), "F" (FIN), "U" (URG), "P"
(PUSH) です。
.TP
.B opt
TCP オプションが後続することを示します。TCP オプションを TCP
ヘッダに追加する際には、\fBoff\fP フィールドが一致するように更新
されます。
.TP
.B data
これ以後がデータセクションであり、ヘッダの後ろに追加すべき生データが
含まれることを示します。
.SH "TCP オプション"
TCP ヘッダには、いくつかのヘッダオプションを追加することが可能です。
ヘッダの大きさが変わるにつれ TCP ヘッダオフセットは自動的に更新されます。
有効なオプションは、\fBnop\fP 無動作(No Operation), \fBeol\fP
オプションリストの終り(End Of (option) List), \fBmss [ size ]\fP
最大セグメント長 (Maximum Segment Size - これはデータを含むパケットの
受信可能な最大長を設定します),
\fBwscale\fP ウィンドウスケール(Window Scale), \fBts\fP
タイムスタンプ(Timestamp) です。
.SH UDP
.TP
.B sport <port>
始点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。
.TP
.B dport <port>
終点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。
.TP
.B len <number>
UDP ヘッダとデータの長さを手動で指定します。特に設定しなければ、今ある
ヘッダと今あるデータに合致するように自動的に修正されます。
.TP
.B sum <number>
UDP 疑似ヘッダとデータに対するチェックサムを手動で指定します。特に設定し
なければ、デフォルトの 0 になり、自動的に計算されます。
.TP
.B data
これ以後がデータセクションであり、ヘッダの後ろに追加すべき生データが
含まれることを示します。
.SH ICMP
.TP
.B type <icmptype>
これは icmptype タグにしたがって ICMP タイプを設定します。これは数値か
認識されるタグのひとつです (認識されるタグ名の一覧については、\fBICMP
タイプ\fP の節を参照のこと)。
.TP
.B code <icmpcode>
ICMP コードを設定します。
.TP
.B data
これ以後がデータセクションであり、ヘッダの後ろに追加すべき生データが
含まれることを示します。
.SH データ
以下に示すものは、それぞれ異なったやり方でパケットを拡張します。
\fBlen\fP は (内容は付加せずに) 単に長さを増やすだけです。\fBvalue\fP
は文字列を使います。\fBfile\fP はファイルを使います。
.TP
.B len <number>
パケットの長さを \fBnumber\fP バイト拡張します (特定のデータで埋める
ことはしません)。
.TP
.B value <string>
与えられた文字列を今あるパケットのデータとして追加することを示します。
文字列は文字もしくは数値の連続したリスト (空白文字をはさみません)、
もしくは "' で区切られています (この場合、たとえ \\ したとしても、
これらの文字は含みません)。文字 \\ は 後続の文字(もしくは 8 進数)といっしょに
して、C 言語のエスケープ値と解釈されます。
.TP
.B file <filename>
指定したファイルからデータを読み込み、今あるパケットに追加します。その
結果の全長が 64k を越える場合、エラーとなります。
.SH "ICMP タイプ"
.TP
.B echorep
エコー応答 (Echo Reply)。
.TP
.B "unreach [ unreachable-code ]"
汎用の到達不可能エラー。これは、ネットワークをまたいでパケットを伝送
しようとしているうちにエラーが発生し、終点に到達できないことを示します。
到達不可能コード(unreachable-code)の名前は、
\fBnet-unr\fP ネットワーク到達不可能 (network unreachable),
\fBhost-unr\fP ホスト到達不可能 (host unreachable),
\fBproto-unr\fP プロトコル到達不可能 (protocol unreachable),
\fBport-unr\fP ポート到達不可能 (port unreachable),
\fBneedfrag\fP, \fBsrcfail\fP 始点経路制御失敗 (source route failed),
\fBnet-unk\fP ネットワーク不明 (network unknown),
\fBhost-unk\fP ホスト不明 (host unknown),
\fBisolate\fP, \fBnet-prohib\fP 管理上の理由によりネットワーク接触禁止,
\fBhost-prohib\fP 管理上の理由によりホスト接触禁止,
\fBnet-tos\fP 指定した TOS でネットワーク到達不可能,
\fBhost-tos\fP 指定した TOS でホスト到達不可能,
\fBfilter-prohib\fP パケットフィルタにより禁止されたパケット,
\fBhost-preced\fP,
\fBcutoff-preced\fP です。
.TP
.B squench
始点抑制 (Source Quence)。
.TP
.B "redir [ redirect-code ]"
(経路の) 方向転換 (Redirect (routing))。パケットを送付するために選択
された経路が最適といえないので、パケットの送信側が他の経路を経路指定
すべきであることを表すために用います。方向転換コード (redirect-code) の名前は、
\fBnet-redir\fP ネットワークに到達するための方向転換,
\fBhost-redir\fP ホストに到達するための方向転換,
\fBtos-net-redir\fP 与えられた TOS でネットワークに到達するための方向転換,
\fBtos-host-redir\fP 与えられた TOS でホストに到達するための方向転換
です。
.TP
.B echo
エコー。
.TP
.B routerad
ルータの公示 (Router advertisment)。
.TP
.B routersol
ルータの請求 (Router solicitation)。
.TP
.B "timex [ timexceed-code ]"
全体時間経過済み (Time Exceeded)。道程が長過ぎて (つまり、ttl が 0 に
なってしまい) パケットが終点に到達できなかったことを表すために用います。
有効なコードの名前は、\fBintrans\fP, \fBreass\fP 与えられた時間内で
フラグメントからパケットの再構成ができなかった、です。
.TP
.B "paramprob [ paramprob-code ]"
パラメータの問題。パラメータ問題のコードの名前で利用できるものはひとつ
だけで、\fBoptabsent\fP です。
.TP
.B timest
タイムスタンプ要求。
.TP
.B "timestrep [ { timestamp-code } ]"
タイムスタンプ応答。タイムスタンプ応答の中で、以下の値を提供することが
できます。\fBrtime\fP, \fBotime\fP, \fBttime\fP
.TP
.B inforeq
情報要求。
.TP
.B inforep
情報応答。
.TP
.B maskreq
アドレスマスク要求。
.TP
.B maskrep
アドレスマスク応答。
.SH 関連ファイル
/etc/hosts
.br
/etc/protocols
.br
/etc/services
.SH 関連項目
ipsend(1), iptest(1), hosts(5), protocols(5), services(5)