総合手引 | セクション 5 | オプション |
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 .
パケットの送信や、パケットの定義の前に、 送信する際に用いるインタフェースを記述する必要があります。
interface | |
これは、ネットワークインタフェースを記述するために用います。ここに 含まれる記述では、オペレーティングシステムが採用している実際の コンフィギュレーションと一致させる必要はありません。 | |
send | これは、実際にネットワーク越しにパケットを送信するために用います。 終点が指定されない場合、そのネットワークに、ルーティングなしで終点に 向けて直接パケットを送出します。 |
router | これは、ipsend が使うデフォルトルータを、カーネルが扱うデフォルト経路と は別に指定します。 |
ipv4 | これは (バージョン 4 の) IP パケットを記述します。IP ヘッダフィールドを、 オプションも含めて、さらに先のプロトコルヘッダを含むデータセクションを 続けて指定することも出来ます。 |
hl <number> | |
これは、手動で IP ヘッダ長を指定します (IP オプションの存在に より自動的に修正されます。デフォルトは 5)。 | |
v <number> | |
IP バージョンを設定します。デフォルトは 4 です。 | |
tos <number> | |
これは、サービスの型 (Type Of Service, TOS) を設定します。 デフォルトは 0 です。 | |
len <number> | |
IP パケットの長さを手動で指定します。データやプロトコルヘッダを 収容できるように、長さは自動的に調整されます。 | |
off <number> | |
これは、IP パケットのフラグメントオフセットフィールドの値を設定します。 デフォルトは 0 です。 | |
ttl <number> | |
これは IP ヘッダの生存時間 (Time To Live, TTL) フィールドを設定します。 デフォルトは 60 です。 | |
proto <protocol> | |
これは IP ヘッダのプロトコルフィールドを設定します。protocol は、 /etc/protocols に存在する数字または名前が使えます。 | |
sum | 手動で IP ヘッダのチェックサムを設定します。これを設定しない (0) ままだと、 送信前に計算されます。 |
src | 手動で IP ヘッダの始点アドレスを指定します。これを設定しないままだと、 ホストの IP アドレスをデフォルトとします。 |
dst | これは、IP パケットの終点を設定します。デフォルトは 0.0.0.0 です。 |
opt | これは、IP ヘッダの IP オプションを指定するために用います。 |
tcp | これは、TCP プロトコルヘッダが後続することを示すために用います。TCP ヘッダの オプションについては、TCP を参照してください。 |
udp | これは、UDP プロトコルヘッダが後続することを示すために用います。UDP ヘッダの オプションについては、UDP の節を参照してください。 |
icmp | これは、ICMP プロトコルヘッダが後続することを示すために用います。ICMP ヘッダの オプションについては、ICMP の節を参考にしてください。 |
data | これは、IP パケットに生データが含まれることを示すために用います。指定可能な オプションの詳細については、データ の節を参考にして下さい。 |
nop | 無動作 (No Operation) [RFC 791] (埋め草として使います)。 |
rr <number> | |
経路記録 (Record Router) [RFC 791]。与えられた番号は、情報を保持するのに 用いる領域の バイト 数を指定します。ちゃんと動作させるには、この値は 4 の倍数に指定しておく必要があります。 | |
zsu | 測定実験 (Experimental Measurement)。 |
mtup [RFC 1191]. | |
最大転送単位 (Maximum Transmission Unit, MTU) 探査 (MTU Probe)。 | |
mtur [RFC 1191]. | |
最大転送単位レディ (MTU Ready)。 | |
encode | |
ts | タイムスタンプ (Timestamp) [RFC 791]。 |
tr | 経路追跡 (Traceroute) [RFC 1393]。 |
sec-class <security-level>, sec | |
セキュリティ (Security) [RFC1108]。このオプションはパケットのセキュリティ レベルを指定します。 sec はセキュリティオプションの枠組みを設定しますが、 sec-class を指定しないとレベルは設定されないままとなります。 | |
lsrr <ip-address> | |
厳密でない始点経路制御 (Loose Source Route) [RFC 791]。 | |
e-sec | 拡張セキュリティ (Extended Security) [RFC 1108]。 |
cipso | 商用セキュリティ (Commercial Security)。 |
satid | ストリーム ID [RFC 791]。 |
ssrr <ip-address> | |
厳密な始点経路制御 [RFC 791]。 | |
addext | アドレス拡張 (Address Extension)。 |
visa | 実験的アクセス制御 (Experimental Access Control)。 |
imitd | IMI 流量記述子 (IMI Traffic Descriptor)。 |
eip | [RFC 1358]。 |
finn | 実験的フロー制御 (Experimental Flow Control)。 |
sport <port> | |
始点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。 | |
dport <port> | |
終点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。 | |
seq <number> | |
シーケンス番号を指定した数で設定します。デフォルトは 0 です。 | |
ack <number> | |
応答番号を指定した数で設定します。デフォルトは 0 です。 | |
off <number> | |
データ先頭からのオフセット値を指定した数で設定します。つまり TCP ヘッダの大きさを意味します。TCP オプションが含まれる場合、この値は自動 的に修正されます。デフォルトは 5 です。 | |
urp <number> | |
緊急データポインタの値を指定した数で設定します。デフォルトは 0 です。 | |
win <number> | |
TCP ウィンドウの大きさを指定した数で設定します。デフォルトは 4096 です。 | |
sum <number> | |
TCP 疑似ヘッダとデータに対するチェックサムを手動で指定します。特に設定 しなければ、デフォルトの 0 になり、自動的に計算されます。 | |
flags <tcp-flags> | |
指定したフラグに一致する TCP フラグフィールドが設定されます。有効な フラグは、"S" (SYN), "A" (ACK), "R" (RST), "F" (FIN), "U" (URG), "P" (PUSH) です。 | |
opt | TCP オプションが後続することを示します。TCP オプションを TCP ヘッダに追加する際には、off フィールドが一致するように更新 されます。 |
data | これ以後がデータセクションであり、ヘッダの後ろに追加すべき生データが 含まれることを示します。 |
sport <port> | |
始点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。 | |
dport <port> | |
終点ポート番号を与えられた番号/名前で設定します。デフォルトは 0 です。 | |
len <number> | |
UDP ヘッダとデータの長さを手動で指定します。特に設定しなければ、今ある ヘッダと今あるデータに合致するように自動的に修正されます。 | |
sum <number> | |
UDP 疑似ヘッダとデータに対するチェックサムを手動で指定します。特に設定し なければ、デフォルトの 0 になり、自動的に計算されます。 | |
data | これ以後がデータセクションであり、ヘッダの後ろに追加すべき生データが 含まれることを示します。 |
type <icmptype> | |
これは icmptype タグにしたがって ICMP タイプを設定します。これは数値または 認識されるタグのいずれかです (認識されるタグ名の一覧については、ICMP タイプ の節を参照のこと)。 | |
code <icmpcode> | |
ICMP コードを設定します。 | |
data | これ以後がデータセクションであり、ヘッダの後ろに追加すべき生データが 含まれることを示します。 |
len <number> | |
パケットの長さを number バイト拡張します (特定のデータで埋める ことはしません)。 | |
value <string> | |
与えられた文字列を今あるパケットのデータとして追加することを示します。 文字列は文字もしくは数値の連続したリスト (空白文字をはさみません)、 もしくは "' で区切られています (この場合、たとえ \ したとしても、 これらの文字は含みません)。文字 \ は 後続の文字(もしくは 8 進数)といっしょに して、C 言語のエスケープ値と解釈されます。 | |
file <filename> | |
指定したファイルからデータを読み込み、今あるパケットに追加します。その 結果の全長が 64k を越える場合、エラーとなります。 | |
echorep | |
エコー応答 (Echo Reply)。 | |
unreach [ unreachable-code ] | |
汎用の到達不可能エラー。これは、ネットワークをまたいでパケットを伝送 しようとしているうちにエラーが発生し、終点に到達できないことを示します。 到達不可能コード(unreachable-code)の名前は、 net-unr ネットワーク到達不可能 (network unreachable), host-unr ホスト到達不可能 (host unreachable), proto-unr プロトコル到達不可能 (protocol unreachable), port-unr ポート到達不可能 (port unreachable), needfrag, srcfail 始点経路制御失敗 (source route failed), net-unk ネットワーク不明 (network unknown), host-unk ホスト不明 (host unknown), isolate, net-prohib 管理上の理由によりネットワーク接触禁止, host-prohib 管理上の理由によりホスト接触禁止, net-tos 指定した TOS でネットワーク到達不可能, host-tos 指定した TOS でホスト到達不可能, filter-prohib パケットフィルタにより禁止されたパケット, host-preced, cutoff-preced です。 | |
squench | |
始点抑制 (Source Quence)。 | |
redir [ redirect-code ] | |
(経路の) 方向転換 (Redirect (routing))。パケットを送付するために選択 された経路が最適といえないので、パケットの送信側が他の経路を経路指定 すべきであることを表すために用います。方向転換コード (redirect-code) の名前は、 net-redir ネットワークに到達するための方向転換, host-redir ホストに到達するための方向転換, tos-net-redir 与えられた TOS でネットワークに到達するための方向転換, tos-host-redir 与えられた TOS でホストに到達するための方向転換 です。 | |
echo | エコー。 |
routerad | |
ルータの公示 (Router advertisment)。 | |
routersol | |
ルータの請求 (Router solicitation)。 | |
timex [ timexceed-code ] | |
全体時間超過 (Time Exceeded)。道程が長過ぎて (つまり、ttl が 0 に なってしまい) パケットが終点に到達できなかったことを表すために用います。 有効なコードの名前は、intrans, reass 与えられた時間内で フラグメントからパケットの再構成ができなかった、です。 | |
paramprob [ paramprob-code ] | |
パラメータの問題。パラメータ問題のコードの名前で利用できるものはひとつ だけで、optabsent です。 | |
timest | タイムスタンプ要求。 |
timestrep [ { timestamp-code } ] | |
タイムスタンプ応答。タイムスタンプ応答の中で、以下の値を提供することが できます。rtime, otime, ttime。 | |
inforeq | |
情報要求。 | |
inforep | |
情報応答。 | |
maskreq | |
アドレスマスク要求。 | |
maskrep | |
アドレスマスク応答。 | |
IPSEND (5) |
総合手引 | セクション 5 | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
“ | The last good thing written in C was Franz Schubert's Symphony #9. | ” |
— Erwin Dietrich |