1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 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 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282
|
.\" manual page [] for pppd 2.3
.\" %FreeBSD: src/usr.sbin/pppd/pppd.8,v 1.20.2.1 2001/07/22 12:41:26 dd Exp %
.\" $FreeBSD: doc/ja_JP.eucJP/man/man8/pppd.8,v 1.12 2001/05/14 01:09:56 horikawa Exp $
.\" SH section heading
.\" SS subsection heading
.\" LP paragraph
.\" IP indented paragraph
.\" TP hanging label
.TH PPPD 8
.SH 名称
pppd \- PPP (Point to Point Protocol) を処理するデーモン
.SH 書式
.B pppd
[
.I tty_name
] [
.I speed
] [
.I options
]
.SH 解説
.LP
Point-to-Point プロトコル (PPP) は、シリアル回線上に確立された
Point-to-Point リンクを介したデータグラムの送受方法を提供します。
PPP は、データグラムのカプセル化方式、拡張可能なリンク制御プロトコル (LCP)、
そして異なるネットワーク層プロトコルの設定と接続の確立を行う
一群のネットワーク制御プロトコル (NCP) の 3 つの部分から構成されています。
.LP
カプセル化体系は、カーネル内のドライバコードにより提供されています。
pppd
は、基本的な LCP 機能、認証機能、そしてインターネットプロトコル (IP)
接続の確立と設定を行う
NCP (IP 制御プロトコル (IPCP) と呼ばれています) を提供します。
.SH よく使われるオプション
.TP
.I <tty_name>
指定したデバイスを介して通信します。
もし必要であれば、前に "/dev/" 文字列が追加されます。
デバイス名が指定されていない場合や
標準入力に接続された端末の名前が与えられた場合には、
pppd
はその端末を使用し、
バックグラウンド実行のための fork を行いません。
\fInoauth\fR オプションが使用された場合、
このオプションは特権オプションとなります。
.TP
.I <speed>
ボーレートを <speed> に設定します (10 進数)。
4.4BSD や NetBSD といったシステムでは、
シリアルデバイスドライバがサポートする任意の速度を指定可能です。
その他のシステム (SunOS, Linux 等) では一定の組み合わせのみが指定可能です。
.TP
.B active-filter \fIfilter-expression
データパケットに適用されるパケットフィルタであり、
どのパケットをリンクアクティビティとみなすかを決定するパケットフィルタを
指定します。
リンクアクティビティとみなされると、アイドルタイマがリセットされるか、
デマンドダイヤルモード時にはリンクがアップされます。
(例えば経路情報パケット等) 定常的にリンク上でパケット送受信が行われ、
他の方法ではリンクがアイドルであるとはみなされない場合に、
このオプションを \fBidle\fR オプションとともに使用すると便利です。
\fIfilter-expression\fR の文法は tcpdump(1) と同じですが、
限定子は PPP では不適当ですので、\fBether\fR や \fBarp\fR は使用できません。
一般的には、フィルタ式をシングルクォートで括って、
式中の空白がシェルに解釈されることを避けるべきです。
カーネル及び pppd が PPP_FILTER を定義してコンパイルされた場合のみ、
このオプションを利用可能です。
.TP
.B asyncmap \fI<map>
非同期文字マップを <map> に設定します。
このマップは、シリアル回線を経由するとどの制御文字の受信が
うまくいかなくなるかを記述するものです。
pppd
は、これらの文字を 2 バイトのエスケープシーケンスとして送信するよう、
相手側に依頼します。
引数は 32 ビットの 16 進数であり、各ビットがエスケープすべき文字を
表しています。
ビット 0 (00000001) は文字 0x00 を表し、
ビット 31 (80000000) は、文字 0x1f つまり '^_' を表しています。
複数の \fIasyncmap\fR オプションが与えられた場合、それらの値の論理和が
採用されます。
\fIasyncmap\fR オプションが与えられなかった場合には、このホストが受信側となる
非同期文字マップは設定されません。
相手側は\fIすべての\fR制御文字をエスケープして送信します。
送信文字をエスケープするには、\fIescape\fR オプションを使用します。
.TP
.B auth
ネットワークパケットの送受信を許可する前に、相手側に自分証明を
行うよう要求します。
.TP
.B call \fIname
ファイル /etc/ppp/peers/\fIname\fR からオプションを読みます。
pppd が root 以外によって起動された場合においても、
このファイルに \fInoauth\fR のような特権オプションを含んでもかまいません。
文字列 \fIname\fR は / で開始してはなりませんし、
パス名の一部に .. を含んではなりません。
オプションファイルのフォーマットは後述します。
.TP
.B connect \fIscript
\fIscript\fR で指定された実行可能コマンドまたはシェルコマンドを使用して、
シリアル回線のセットアップを行います。
ほとんどの場合、ここで指定されるスクリプトには chat(8) プログラムを使用し、
モデムにダイヤルコマンドを送ったり、リモート ppp セッションを開始したりします。
\fInoauth\fR オプションが使用された場合、
このオプションは特権オプションとなります。
.TP
.B connect-max-attempts \fI<n>
指定した時間 (デフォルトでは 1) を越えてリモートシステムとの
ダイヤル接続を保持しません。接続ができない場合は、
pppd は終了します。 \fBpersist\fR を指定することが要求されます。
.TP
.B crtscts
シリアルポートのフロー制御にハードウェアフロー制御 (RTS/CTS) を用います。
\fIcrtscts\fR か \fInocrtscts\fR の両方のオプションが与えられない時、
シリアルポートのハードウェアフロー制御の設定は変更されずに
そのままになります。
.TP
.B defaultroute
IPCP ネゴシエーションが成功すると、相手側をゲートウェイとする
デフォルト経路をシステムの経路テーブルに追加します。
このオプションにより追加されたデフォルト経路エントリは、
PPP 接続が切断された際に削除されます。
\fInodefaultroute\fR オプションが指定された場合には、
このオプションは特権オプションとなります。
.TP
.B disconnect \fIscript
pppd が接続を切った後に \fIscript\fR で指定した実行可能コマンドまたは
シェルコマンドを実行します。
このスクリプトで、例えばハードウェアモデム制御信号 (DTR) が使えない場合に
モデムをハングアップすることができます。
モデムが既にハングアップしている場合には、この切断スクリプトは実行されません。
\fInoauth\fR オプションが使用された場合には、
このオプションは特権オプションです。
.TP
.B escape \fIxx,yy,...
転送時にエスケープを行うべき文字を指定します (相手側が
非同期文字マップでエスケープを要求しているかどうかには影響されません)。
エスケープされる文字は、コンマで区切られた 16 進数で指定します。
制御文字しか指定できない \fIasyncmap\fR オプション
とは異なり、\fIescape\fR オプションではどんな文字でも指定できる
ことに注意してください。
ただし 16 進表記で 0x20 から 0x3f までと 0x5e の文字は
エスケープしてはなりません。
.TP
.B file \fIname
オプションをファイル \fIname\fR から読み込みます (フォーマットは後述します)。
このファイルは、pppd を起動したユーザが読むことが可能である必要があります。
.TP
.B lock
シリアルデバイスに対する排他アクセスを確実に行うために、
UUCP 形式のロックファイルを作成するよう pppd に指示します。
.TP
.B mru \fIn
ネゴシエーション時の MRU [最大受信単位; Maximum Receive Unit]
値を \fIn\fR に設定します。
pppd
は、通信相手に \fIn\fR バイトを超えるパケットを送信しないよう要求します。
最小の MRU 値は、128 です。
デフォルトの MRU 値は 1500 です。低速のリンクでは 296 を推奨します
(TCP/IP ヘッダ 40 バイト + データ 256 バイト)。
.TP
.B mtu \fIn
MTU [最大転送単位; Maximum Transmit Unit] 値を \fIn\fR に設定します。
相手が MRU ネゴシエーションを通じてこれより小さい値を要求してこない限り、
PPP ネットワークインタフェースを通して \fIn\fR バイトを
越えないデータパケットを送ることを、
pppd はカーネルのネットワークコードに要求します。
.TP
.B passive
LCP で "passive" オプションを有効にします。このオプションを指定した場合には、
接続を開始しようとしても相手からの返答がない場合、
pppd
は相手から有効な LCP パケットが到着するのを受動的に待ち続けます。
このオプションを指定しなければ、相手からの返答がない場合に
pppd
は実行を中断します。
.SH オプション
.TP
.I <local_IP_address>\fB:\fI<remote_IP_address>
ローカルインタフェースとリモートインタフェースの IP アドレスを設定します。
どちらか片方を省略することも可能です。IP アドレスは、ホスト名もしくは
10 進数ドット表現 (例: 150.234.56.78) のどちらでも指定可能です。
デフォルトのローカルアドレスは、そのシステムの (最初の) IP アドレスと
なります。(ただし
\fInoipdefault\fR
オプションが指定された場合を除きます。) リモートアドレスは、
オプションで指定されていない場合には相手側から取得されます。
ですから、もっとも単純な指定を行う場合には、このオプションは不必要です。
ローカルまたはリモートの IP アドレスがこのオプションで指定されている場合には、
IPCP ネゴシエーションで相手側がこの指定と異なるアドレスを送って来た場合、
pppd はこれを拒否します。ただし、
\fIipcp-accept-local\fR
や
\fIipcp-accept-remote\fR
が指定されている場合にはこの限りではありません。
.TP
.B bsdcomp \fInr,nt
接続相手に、BSD-Compress 方式を使った送出時のパケット圧縮を要求します。
ここでの最大コードサイズは \fInr\fR ビットです。
相手側が送るパケットの最大の大きさは、 \fInt\fR ビットです。
\fInt\fR が指定されない時は、デフォルトの \fInr\fR が使われます。
9 から 15 の範囲の値が、 \fInr\fR と \fInt\fR で使われます。
より大きな値は、よりよい圧縮となりますが、圧縮辞書のためにより多くの
カーネルメモリを消費します。\fInr\fR や \fInt\fR に対して、値 0 を
指定すると、指定した方向には圧縮を行いません。
BSD-Compress 圧縮を完全に無効にするためには、
\fInobsdcomp\fR か \fIbsdcomp 0\fR を指定してください。
.TP
.B chap-interval \fIn
このオプションが指定された場合、
pppd
は \fIn\fR 秒おきに再チャレンジします。
.TP
.B chap-max-challenge \fIn
CHAP チャレンジの最大送信回数を \fIn\fR に設定します (デフォルト値は 10)。
.TP
.B chap-restart \fIn
(チャレンジの再送のタイムアウトによる)
CHAP 再開の間隔を \fIn\fR 秒に設定します
(デフォルト値は 3)。
.TP
.B debug
接続のデバッグ機能を有効にします。
このオプションを指定した場合、pppd は送受信した
すべての制御パケットの内容を可読形式でログします。
パケットは syslog を経由して、\fIdaemon\fR ファシリティの
\fIdebug\fR レベルとして記録されます。
本情報は、/etc/syslog.conf を適切に記述することで
ファイルに記録することができます (syslog.conf(5) 参照)。
.TP
.B default-asyncmap
asyncmap ネゴシエーションを無効にし、
送受信両方向にて全制御文字をエスケープさせます。
.TP
.B default-mru
MRU [最大受信単位; Maximum Receive Unit] ネゴシエーションを無効にします。
このオプションを指定すると、送受信両方向において、
pppd はデフォルトの MRU 値 1500 バイトを使用します。
.TP
.B deflate \fInr,nt
接続相手に、Deflate 方式を使った送出時のパケット圧縮を要求します。
ここで最大のウィンドウサイズは \fI2**nr\fR バイトです。
また、相手に送るパケットを最大ウィンドウサイズ \fI2**nt\fR バイトにて圧縮
することを合意します。
\fInt\fR が指定されないと、デフォルトの \fInr\fR の値となります。
\fInr\fR と \fInt\fR には 8 から 15 までの範囲の値が許されます。
より大きな値は、よりよい圧縮となりますが、圧縮辞書のためにより多くの
カーネルメモリを消費します。
\fInr\fR や \fInt\fR に対して、値 0 を
指定すると、指定した方向には圧縮を行いません。
Deflate 圧縮を完全に無効にするためには、
\fInodeflate\fR か \fIdeflate 0\fR を指定してください。
(注: 相手が両方とも可能な場合には、
pppd は BSD-Compress よりも Deflate 圧縮を好んで要求します。)
.TP
.B demand
リンクの開始を要求時のみ、つまりデータトラフィックが存在する時のみ行います。
このオプションを指定する場合、リモート IP アドレスを、
ユーザがコマンドラインで指定するか、オプションファイル中に含む必要があります。
pppd は、相手に接続することなく、
まずインタフェースを設定して IP トラフィックに備えます。
トラフィックが現れると、pppd は相手へ接続し、
ネゴシエーションや認証などを行います。
これが完了すると、pppd はリンクを介してデータパケット (すなわち IP パケット)
の授受を開始します。
\fIdemand\fR オプションは暗黙的に \fIpersist\fR オプションを指定します。
この動作が望ましくない場合、\fIdemand\fR オプションの後に
\fInopersist\fR オプションを使用してください。
\fIidle\fR および \fIholdoff\fR のオプションもまた、
\fIdemand\fR オプションとともに使用すると便利です。
.TP
.B domain \fId
認証のために使用するローカルホスト名にドメイン名 \fId\fR を付加します。
例えば、完全な形でのドメイン名 (FQDN) が porsche.Quotron.COM であって、
gethostname() が porsche という名前を返す場合には、
このオプションを用いてドメイン名を \fIQuotron.COM\fR と指定します。
そうすると、pppd は \fIporsche.Quotron.COM\fR を
秘密情報ファイルの中の秘密情報を調べるために使用したり、
相手に対して自己証明するために送るデフォルトの名前として使用します。
このオプションは特権オプションです。
.TP
.B holdoff \fIn
リンク切断から再初期化まで何秒待つかを指定します。
\fIpersist\fR または \fIdemand\fR オプション使用時にのみ、
このオプションは有効です。
アイドルであったためにリンクが切断された場合は、
この抑止期間は適用されません。
.TP
.B idle \fIn
リンクが \fIn\fR 秒アイドルだった場合に接続を切るように pppd に指定します。
データパケット (つまり IP パケット)が送受信されない時に、
リンクはアイドルだとみなされます。
注: \fIdemand\fR オプションを使用せずに
\fIpersist\fR オプションを使用する場合に、このオプションを使うことを勧めます。
\fBactive-filter\fR オプションが与えられると、
指定したアクティビティフィルタが受理しなかったデータパケットもまた、
リンクがアイドルであるとみなす対象とします。
.TP
.B ipcp-accept-local
このオプションが指定された場合には、
別のオプションによってローカル IP アドレスの指定が行われている場合でも、
pppd
は相手からのローカル IP アドレスの指定を受け入れます。
.TP
.B ipcp-accept-remote
このオプションが指定された場合には、
別のオプションによってリモート IP アドレスの指定が行われている場合でも、
pppd
は相手からのリモート IP アドレスの指定を受け入れます。
.TP
.B ipcp-max-configure \fIn
IPCP configure-request の最大送信回数を \fIn\fR 回に設定します
(デフォルト値は 10)。
.TP
.B ipcp-max-failure \fIn
IPCP configure-Reject を送信開始するまでの IPCP configure-NAK の最大応答回数を
\fIn\fR 回に設定します (デフォルト値は 10)。
.TP
.B ipcp-max-terminate \fIn
IPCP terminate-request の最大送信回数を \fIn\fR 回に設定します
(デフォルト値は 3)。
.TP
.B ipcp-restart \fI<n>
(再送のタイムアウトによる) IPCP 再開の間隔を \fIn\fR 秒に設定します。
(デフォルト値は 3)。
.TP
.B ipparam \fIstring
ip-up と ip-down スクリプト用に余分のパラメータを指定します。
このオプションが与えられた場合、 \fIstring\fR が 6 番目のパラメータと
して、これらのスクリプトに与えられます。
.TP
.B ipx
IPXCP および IPX プロトコルを有効にします。
このオプションは現在 Linux でのみ、
IPX サポートを含めてカーネルを構成した場合のみサポートされています。
.TP
.B ipx-network \fIn
IPXCP 設定要求フレーム中の IPX ネットワーク番号を \fIn\fR に設定します。
16 進数 (先頭の 0x を除いて) を指定します。
正当なデフォルト値はありません。
このオプションが指定されないと、ネットワーク番号は相手から獲得します。
相手がネットワーク番号を持っていない場合は、IPX プロトコルは開始されません。
.TP
.B ipx-node \fIn\fB:\fIm
IPX ノード番号を設定します。
2 つのノード番号をコロンで区切ります。
最初の番号 \fIn\fR はローカルのノード番号です。
次の番号 \fIm\fR は相手のノード番号です。
どちらのノード番号も 16 進数であり、最大 10 桁です。
ipx-network のノード番号は一意である必要があります。
正当なデフォルト値はありません。
このオプションが指定されないと、ノード番号は相手から獲得します。
.TP
.B ipx-router-name \fI<string>
ルータ名を設定します。
これは文字列であり、情報データとして相手に送られます。
.TP
.B ipx-routing \fIn
受信する経路プロトコルをこのオプションで指定します。
複数の \fIipx-routing\fR インスタンスを指定可能です。'\fInone\fR' オプション
(0) のみ、ipx-routing インスタンスとして指定可能です。
値は、\fI0\fR が \fINONE\fR に、\fI2\fR が \fIRIP/SAP\fR に、
\fI4\fR が \fINLSP\fR に対応します。
.TP
.B ipxcp-accept-local
ipx-node オプションで指定したノード番号に対する、相手の NAK を受け付けます。
非ゼロのノード番号が指定された場合、
この値の使用を主張することがデフォルトです。
このオプションを指定すると、
相手がノード番号のエントリを上書きすることを許します。
.TP
.B ipxcp-accept-network
ipx-network オプションで指定したネットワーク番号に対する、
相手の NAK を受け付けます。
非ゼロのノード番号が指定された場合、
この値の使用を主張することがデフォルトです。
このオプションを指定すると、
相手がノード番号のエントリを上書きすることを許します。
.TP
.B ipxcp-accept-remote
設定要求フレーム中に指定される相手のネットワーク番号を使用します。
相手のノード番号を指定し、
かつこのオプションを指定しなかった場合は、
相手はあなたが指定した値を使用することを強制されます。
.TP
.B ipxcp-max-configure \fIn
システムが送信する IPXCP 設定要求フレーム数の最大値を \fIn\fR に設定します。
デフォルト値は 10 です。
.TP
.B ipxcp-max-failure \fIn
ローカルシステムがオプションを拒否する前に、
ローカルシステムが送信する IPXCP NAK フレーム数の
最大値を設定します。デフォルト値は 3 です。
.TP
.B ipxcp-max-terminate \fIn
相手が聞いていないという判断をローカルシステムが下す前に、
ローカルシステムが送信する
IPCP 停止要求フレーム数の最大値を設定します。デフォルト値は 3 です。
.TP
.B kdebug \fIn
カーネルレベルの PPP ドライバのデバッグコードを有効にします。
引数 \fIn\fR として、以下の数値のうち必要なものの合計を指定します。
1 は一般的なデバッグメッセージ出力を有効にします。
2 は受信したパケットの内容の出力を要求します。
4 は送信したパケットの内容の出力を要求します。
ほとんどのシステムでは、カーネルが表示したメッセージは、
/etc/syslog.conf 設定ファイルに指示されるように、
syslog(1) がファイルにログします。
.TP
.B lcp-echo-failure \fIn
このオプションが指定された場合、 LCP echo-request を \fIn\fR 回送信しても
相手から有効な LCP echo-reply が帰ってこなければ、pppd は
相手がダウンしているものと推測します。このような場合、pppd は
接続を切断します。このオプションを使用する際には、
\fIlcp-echo-interval\fR のパラメータとして 0 以外の数値を指定してください。
このオプションは、ハードウェアモデム制御線 (DSR) が使用できない状況で、
(モデムがハングアップするなど) 物理的な接続が切断された後に
pppd を終了するために用いられます。
.TP
.B lcp-echo-interval \fI<n>
このオプションを指定すると、pppd は LCP echo-request フレームを
\fIn\fR 秒毎に相手側に送信します。
通常、相手側は echo-request を受信すると echo-reply を送り返して返答します。
このオプションは、相手側との接続が切れたことを検出するために
\fIlcp-echo-failure\fR オプションとともに使用されます。
.TP
.B lcp-max-configure \fIn
LCP configure-request の最大送信回数を \fIn\fR 回に設定します
(デフォルト値は 10)。
.TP
.B lcp-max-failure \fIn
LCP configure-Reject を送信開始するまでの LCP configure-NAK の最大応答回数を
\fIn\fR 回に設定します (デフォルト値は 10)。
.TP
.B lcp-max-terminate \fIn
LCP terminate-request の最大送信回数を \fIn\fR 回に設定します
(デフォルト値は 3)。
.TP
.B lcp-restart \fIn
(再送のタイムアウトによる) LCP 再開の間隔を \fIn\fR 秒に設定します
(デフォルト値は 3)。
.TP
.B local
モデム制御線を使用しません。このオプションを指定すると、
pppd
は、モデムからの CD (Carrier Detect) 信号の状態を無視し、
DTR (Data Terminal Ready) 信号の状態を変化させません。
.TP
.B login
PAP を用いた相手の認証に、システムパスワードデータベースを用い、
ユーザをシステムの wtmp ファイルに記録します。
アクセスが許されるためには、
/etc/ppp/pap-secrets ファイルとシステムパスワードデータベースの両方に、
相手のエントリが存在する必要があります。
.TP
.B maxconnect \fIn
ネットワークトラフィックの使用開始から \fIn\fR 秒後に接続を切断します
(これは、最初のネットワーク制御プロトコルが来てから \fIn\fR 秒になります)。
.TP
.B modem
モデム制御線を使用します。このオプションはデフォルトです。
このオプションを指定すると、pppd は
(接続スクリプトが指定していなければ)
モデムからの CD (Carrier Detect) 信号のアサートを待ってから
シリアルデバイスをオープンし、接続終了時に
DTR (Data Terminal Ready) 信号を短い期間落としてから
接続スクリプトを実行します。
Ultrix では、このオプションはハードウェアフロー制御、
すなわち \fIcrtscts\fR オプションを暗黙的に指定します。
.TP
.B ms-dns \fI<addr>
pppd が Microsoft Windows クライアントのサーバとして動作している場合、
このオプションは pppd に 1 または 2 の DNS (Domain Name Server) アドレスを
クライアントに提供することを許します。
このオプションの最初のインスタンスはプライマリ DNS アドレスを与えます。
次のインスタンスは (もし与えられれば) セカンダリ DNS アドレスを与えます。
(このオプションは、
古いバージョンの pppd では \fBdns-addr\fR という名前でした。)
.TP
.B ms-wins \fI<addr>
pppd が Microsoft Windows クライアントまたは "Samba" クライアントの
サーバとして動作している場合、このオプションは pppd に 1 または 2 の
WINS (Windows Internet Name Services) サーバアドレスをクライアントに提供
することを許します。
このオプションの最初のインスタンスはプライマリ WINS アドレスを与えます。
次のインスタンスは (もし与えられれば) セカンダリ WINS アドレスを与えます。
.TP
.B name \fIname
認証の目的で用いられるローカルシステムの名前を \fIname\fR に設定します。
このオプションは特権オプションです。
このオプションを指定すると、pppd は秘密情報ファイルの第 2 フィールドが \fIname\fR
である行を使用して秘密情報を探し、相手を認証します。
さらに、\fIuser\fR オプションで上書きしない場合は、
相手に対してローカルシステムを自己証明する時に送る名前として
\fIname\fR を使用します。
(pppd はドメイン名を \fIname\fR に付加しないことに注意してください。)
.TP
.B netmask \fIn
インタフェースのネットマスクを \fIn\fR に設定します。
32 ビットのネットマスクを「10 進数ドット」表記で指定します (例: 255.255.255.0)。
このオプションが与えられると、デフォルトのネットマスクと指定したネットマスク
との論理和が値となります。デフォルトのネットマスクはネゴシエートされる
リモートの IP アドレスに依存します。
リモート IP アドレスのクラスに適切なネットマスクと、
同一ネットワーク上システムの非 point-to-point ネットワークインターフェース
のネットマスクとの論理和となります。
.TP
.B noaccomp
Address/Control 圧縮を双方向 (送受信) で無効にします。
.TP
.B noauth
相手が自己証明することを要求しません。
\fIauth\fR オプションが /etc/ppp/options に指定されている場合、
このオプションは特権オプションです。
.TP
.B nobsdcomp
BSD-Compress 圧縮を無効にします。
BSD-Compress 方式を使用したパケット圧縮を \fBpppd\fR は要求も賛同もしません。
.TP
.B noccp
CCP (圧縮制御プロトコル; Compression Control Protocol) ネゴシエーションを
無効にします。
相手にバグがあるために、
CCP ネゴシエーションのための pppd からの要求に混乱してしまう場合にのみ、
このオプションが必要です。
.TP
.B nocrtscts
シリアルポートにハードウェアフロー制御 (つまり RTS/CTS) を使用しません。
\fIcrtscts\fR か \fInocrtscts\fR の両方のオプションが与えられない時、
シリアルポートのハードウェアフロー制御の設定は変更されずに
そのままになります。
.TP
.B nodefaultroute
\fIdefaultroute\fR オプションを無効にします。
\fIpppd\fR を使っているユーザにデフォルト経路を作成させたくない
システム管理者は、このオプションを /etc/ppp/options ファイルに
記述することができます。
.TP
.B nodeflate
Deflate 圧縮を無効にします。
pppd は Deflate 方式を使用した圧縮パケットを要求しませんし、賛同もしません。
.TP
.B nodetach
制御端末から切り離しません。このオプションを指定しないと、
標準入力がある端末以外のシリアルデバイスが指定された場合は、
pppd は fork してバックグラウンドプロセスになります。
.TP
.B noip
IPCP ネゴシエーションと IP 通信を無効にします。
相手にバグがあるために、
IPCP ネゴシエーションのための pppd からの要求に混乱してしまう場合にのみ、
このオプションが必要です。
.TP
.B noipdefault
ローカル IP アドレスが指定されない場合にデフォルトで行われる、
ホスト名から IP アドレスを (可能であれば) 決定する動作を無効にします。
このオプションを指定した場合には、IPCP ネゴシエーション時に
相手側がローカルの IP アドレスを指定する必要があります
(明示的にコマンドラインで指定されているか、
オプションファイルで指定されている場合を除きます)。
.TP
.B noipx
IPXCP および IPX プロトコルを無効にします。
相手にバグがあるために、
IPXCP ネゴシエーションのための pppd からの要求に混乱してしまう場合にのみ、
このオプションが必要です。
.TP
.B nomagic
magic number ネゴシエーションを無効にします。このオプションを指定した場合には、
pppd
はループバック回線を検出することができません。
相手にバグがある場合にのみ必要となります。
.TP
.B nopcomp
送受信方向とも、プロトコルフィールド圧縮ネゴシエーションを無効にします。
.TP
.B nopersist
接続の確立と切断のたびに終了します。
\fIpersist\fR または \fIdemand\fR のオプションが指定されない場合、
このオプションはデフォルトです。
.TP
.B nopredictor1
Predictor-1 圧縮を受け付けませんし、賛同もしません。
.TP
.B noproxyarp
\fIproxyarp\fR オプションを無効にします。pppd のユーザに
proxy ARP エントリを作成させたくないシステム管理者は、このオプションを
/etc/ppp/options ファイルに記述することでそのようにできます。
.TP
.B novj
Van Jacobson 形式の TCP/IP ヘッダ圧縮を送受信方向において無効にします
.TP
.B novjccomp
Van Jacobson 形式の TCP/IP ヘッダ圧縮において、
connection-ID 圧縮を無効にします。
このオプションを指定すると、
pppd は Van Jacobson 圧縮された TCP/IP ヘッダから
connection-ID バイトを省略しなくなりますし、
相手にも依頼しません。
.TP
.B papcrypt
相手の同一性を調べるために使われる
/etc/ppp/pap-secrets ファイル内の全ての秘密情報を暗号化することを
指示します。pppd は、暗号化前の /etc/ppp/pap-secrets
ファイルからの秘密情報と等しいパスワードを受け入れません。
.TP
.B pap-max-authreq \fIn
PAP authenticate-request の最大送信回数を \fIn\fR 回に設定します
(デフォルト値は 10)。
.TP
.B pap-restart \fIn
(再送のタイムアウトによる) PAP 再開の間隔を \fIn\fR 秒に設定します
(デフォルト値は 3)。
.TP
.B pap-timeout \fIn
PAP において接続先が自己証明するまで
pppd
が待機する最大時間を、\fIn\fR 秒に
設定します (0 は制限を設けないことを意味します)。
.TP
.B pass-filter \fIfilter-expression
送受信されるデータパケットに適用されるフィルタで、
通過を許されるパケットを決定するフィルタを指定します。
フィルタが拒否するパケットは黙って捨てられます。
特定のネットワークデーモン (例えば routed) が
リンクバンド幅を使い切ることを防いだり、
基本的なファイアウォール機能を提供するために、このオプションがあります。
\fIfilter-expression\fR の文法は tcpdump(1) と同じですが、
限定子は PPP リンクでは不適当ですので、
\fBether\fR や \fBarp\fR は使用できません。
一般的には、フィルタ式をシングルクォートで括って、
式中の空白がシェルに解釈されることを避けるべきです。
\fBinbound\fR と \fBoutbound\fR の限定子を付けることにより、
入出力のパケットに異なった制約を適用可能です。
このオプションは現在 NetBSD でのみ利用可能であり、
カーネル及び pppd が PPP_FILTER を定義してコンパイルされた場合のみ、
このオプションを利用可能です。
.TP
.B persist
接続が切断された後で終了しません。代わりに再接続しようとします。
.TP
.B predictor1
相手が送出するフレームを Predictor-1 圧縮を使用するよう要求し、
要求された場合 Predictor-1 で送出フレームを圧縮することに賛同します。
カーネルドライバが Predictor-1 圧縮をサポートしない場合には、
このオプションは影響ありません。
.TP
.B proxyarp
自システムの ARP [アドレス解決プロトコル; Address Resolution Protocol]
テーブルに相手の IP アドレス
と自システムのイーサネットアドレスを追加します。
他のシステムに対して、
相手がローカルイーサネット上にあるように見せることになります。
.TP
.B remotename \fIname
リモートシステムの名前を \fIname\fR とみなして認証を行います。
.TP
.B refuse-chap
このオプションを指定すると、
pppd は相手に対して自己証明するにあたり CHAP の使用に賛同しません。
.TP
.B refuse-pap
このオプションを指定すると、
pppd は相手に対して自己証明するにあたり PAP の使用に賛同しません。
.TP
.B require-chap
CHAP [チャレンジハンドシェーク認証プロトコル;
Challenge Handshake Authentication Protocol] を用いて
自己証明を行うことを相手に要求します。
.TP
.B require-pap
PAP [パスワード認証プロトコル; Password Authentication Protocol] を用いて
自己証明を行うことを相手に要求します。
.TP
.B silent
このオプションを指定した場合、
pppd
は相手から有効な LCP パケットを受信するまで、
接続を開始するための LCP パケットを送信せずに待ちます
(旧バージョンの pppd で 'passive' オプションを指定した場合と同じ動作です)。
.TP
.B usehostname
認証時にホスト名をローカルシステムの名前として使用することを強制します
(ドメイン名が与えられれば付加されます)。
(このオプションは \fIname\fR オプションに優先します。)
.TP
.B user \fIname
このマシンを相手に対して自己証明する際に用いるユーザ名を
\fIname\fR に設定します。
.TP
.B vj-max-slots \fIn
Van Jacobson の TCP/IP ヘッダ圧縮/伸長に使用する接続スロット数を
\fIn\fR に設定します。
2 から 16 (両端を含む) の範囲にある必要があります。
.TP
.B welcome \fIscript
PPP ネゴシエーション開始前かつ、(もしあれば) 接続スクリプトの完了後に、
\fIscript\fR で指定される実行コマンドもしくはシェルコマンドを実行します。
\fInoauth\fR オプションが使用された場合には、
このオプションは特権オプションとなります。
.TP
.B xonxoff
ソフトウェアフロー制御 (つまり XON/XOFF) を使用してシリアルポート上の
データフローを制御します。
.SH オプションファイル
オプションは、コマンドラインから与えられるのと同様に、
ファイルに記述されたものを用いることも可能です。
pppd
は、コマンドラインからのオプションを
読み込む前に /etc/ppp/options, ~/.ppprc, /etc/ppp/options.\fIttyname\fR から
(この順に) オプションを読み込みます。
(実際には、端末名を得るためにコマンドラインオプションがまずスキャンされてから、
options.\fIttyname\fR ファイルが読まれます。)
options.\fIttyname\fR ファイル名構成にあたり、
まず /dev/ が端末名から除かれ、残った / 文字がドットと置換されます。
.PP
オプションファイルの内容は、
空白文字をデリミタとする単語の並びとして解釈されます。
空白文字を含む文字列はダブルクォート (") で囲うことで
1 つの文字列として解釈されるようになります。
バックスラッシュ (\\) は、直後の 1 文字をクォートします。
ハッシュ文字 (#) はコメントの始まりとして解釈され、
改行までをコメントとみなします。
オプションファイル中での \fIfile\fR および \fIcall\fR のオプションの
使用制限はありません。
.SH セキュリティ
.I pppd
は、正当なユーザに対するサーバマシンへの PPP アクセスを提供しつつ、
サーバ自身やそのサーバが存在するネットワークのセキュリティを危険に
さらす心配のない、充分なアクセス制御をシステム管理者に提供します。
このアクセス制御の一部は、
/etc/ppp/options ファイルにより提供されます。
このファイルでシステム管理者は
pppd の使用制限を設定することができます。
また一部は、PAP や CHAP の秘密情報ファイルにより提供されます。
このファイルで個々のユーザが使用する IP アドレスの組を
管理者が制限することができます。
.PP
通常の pppd の用途においては、
\fIauth\fR オプションを /etc/ppp/options ファイルに設定すべきです。
(将来のリリースにおいてデフォルトになるかもしれません。)
ユーザが pppd を使用して相手にダイヤルアウトしたい場合で、
相手が自己証明することを拒否する場合 (インターネットサービスプロバイダなど)、
システム管理者は /etc/ppp/peers 下にオプションファイルを作成し、
ここに \fInoauth\fR オプションと、使用するシリアルポート名と、
(必要なら) \fIconnect\fR オプションと、その他適切なオプションを格納します。
このようにすることで、
非特権ユーザが信頼関係のある相手との間で認証されない接続を結ぶことを可能
とします。
.PP
上述のように、セキュリティに影響するオプションは特権オプションであり、
通常の非特権ユーザが setuid-root された pppd では使用できません。
これは、コマンドラインでも、ユーザの ~/.ppprc ファイルでも、
\fIfile\fR オプションを使用して読まれるオプションファイルでも言えることです。
/etc/ppp/options ファイル中、
もしくは \fIcall\fR オプションを使用して読まれるオプションファイル中では、
特権オプションの使用は許されます。
pppd が root ユーザにより起動された場合、特権オプションの使用は無制限です。
.SH 認証
認証とは、一方が他方に自己を認めさせる処理のことを言います。
これは、一方が自己の名前を他方に送る際、
その名前のオーソライズされた本物の使用者のみから生まれる
ある種の秘密情報を伴うことを必要とします。
このような交換において、最初の一方を「クライアント」と呼び、
他方を「サーバ」と呼びます。
クライアントは自己をサーバに識別させるための名前を持ち、
サーバもまた自己をクライアントに識別させるための名前を持ちます。
一般的に本物のクライアントは秘密情報 (またはパスワード) をサーバと共有し、
自己を証明するにあたりその秘密情報を知っていると伝えます。
認証に使用される名前は相手のインターネットホスト名に対応することが多いですが、
これは本質的なことではありません。
.LP
現在 pppd は 2 つの認証プロトコルをサポートします:
それぞれ、パスワード認証プロトコル (Password Authentication Protocol; PAP) と
チャレンジハンドシェーク認証プロトコル
(Challenge Handshake Authentication Protocol; CHAP) です。
PAP の場合、クライアントは自己証明のために、
自己の名前とクリアテキストパスワードをサーバに送る必要があります。
これとは対称的に、CHAP 認証交換はサーバが開始し、
チャレンジをクライアントに送ります
(チャレンジパケットにはサーバ名が含まれます)。
クライアントはこれに返答する必要があり、
返事の中に自己の名前に加えて共有秘密情報とチャレンジから得られるハッシュ値を
含め、自己が秘密情報を知っていると伝える必要があります。
.LP
PPP プロトコルは対称的ですから、
両者が他方に対して自己証明を行うように要求することを許します。
この場合、2 つの別々かつ独立した認証交換が発生します。
2 つの交換においては別の認証プロトコルを使用できますし、
原則的には違う名前を使用可能です。
.LP
pppd
のデフォルトの挙動は、もし認証の要求があればそれを受け入れ、
相手側には認証を要求しないというものです。
ただし、
pppd
がその認証を行なうのに必要な秘密情報を持っていない
特定のプロトコルによる認証は拒否します。
.LP
pppd は認証に使用する秘密情報を秘密情報ファイル
(PAP の場合 /etc/ppp/pap-secrets、
CHAP の場合 /etc/ppp/chap-secrets) に格納します。
どちらの秘密情報ファイルも同じフォーマットです。
秘密情報ファイルには、
pppd が他のシステムに対して自己証明するための秘密情報を格納する
ことができますし、
他のシステムの認証を行うための秘密情報を格納することも可能です。
.LP
秘密情報ファイル中の各行は 1 つの秘密情報を格納します。
特定の秘密情報はあるクライアントとサーバの組み合わせに対して特有です -
このクライアントがこのサーバに対して自己証明することにのみ使用されます。
秘密情報ファイルの各行は、少なくとも 3 つのフィールドからなります:
それぞれ、クライアント名、サーバ名、秘密情報です。
指定したサーバに指定したクライアントが接続する時に使用する
IP アドレスリストを、これらのフィールドの後に続けることができます。
.LP
秘密情報ファイルはオプションファイルと同じように単語の並びとして
解釈されますので、クライアント名、サーバ名、秘密情報の各フィールドは
1 語である必要があり、
これに含まれる空白文字や特殊文字は
クォートもしくはエスケープする必要があります。
同じ行の残りの語は、クライアントに許される IP アドレスのリストとされるか、
(ワイルドカードでもなく空でもない) 特定のクライアント名を含む行の
場合は "local:remote" アドレス
(コマンドラインもしくはオプションファイルで共通フォーマット)
に優先します。
行に 3 語しか無い場合もしくは最初の語が "-" である場合、
全ての IP アドレスが不許可となります。
全アドレスを許可するには "*" を使用します。
また "!" から始まる語は、指定したアドレスを受け付け\fIない\fRことを示します。
アドレスの後には "/" と数値 \fIn\fR を続けることが可能であり、
全体のサブネットを示します。
つまり、全てのアドレスの上位 \fIn\fR ビットが同じ値となります。
クライアント名、サーバ名、秘密情報においては大文字小文字の区別は重要です。
.LP
秘密情報が `@' から始まる場合、後続するものはファイル名であり、
そこから秘密情報を読み込むものとされます。
クライアント名もしくはクライアント名に単一の "*" を使用すると、
いかなる名前にもマッチします。
秘密情報を選択する時、pppd はベストマッチ、
すなわちワイルドカードが最小となるマッチを採用します。
.LP
秘密情報ファイルには、他のホストを認証するための秘密情報に加え、
他のホストに対して自己証明するための秘密情報も格納します。
pppd が相手を認証 (相手が相手であることを確認) する時、
秘密情報の検索にあたり、
相手の名前が最初のフィールドにありローカルシステムの名前が 2 番目のフィールド
にあるものを選びます。
ローカルシステム名のデフォルトはホスト名であり、
\fIdomain\fR オプション使用時にはドメイン名が付加されます。
このデフォルトには \fIname\fR オプションが優先しますが、
\fIusehostname\fR オプションが使用されている場合は例外です。
.LP
pppd が相手に対する自己証明のための秘密情報を選ぶ時には、
まずどの名前を使用して相手に対して自己識別するかを決めます。
この名前はユーザが \fIuser\fR オプションで指定可能です。
このオプションが使用されていない場合、
名前はデフォルトのローカルシステム名となり、
前の段落で示したように決定されます。
こうして pppd は秘密情報の検索にあたり、
この名前が最初のフィールドにあり相手の名前が 2 番目のフィールド
にあるものを選びます。
CHAP 認証が使用される場合、
相手はチャレンジパケット中に相手の名前を含めますから、
pppd は相手の名前を知ることになります。
しかし、PAP が使用される場合、
ユーザが指定したオプションを元に pppd は相手の名前を決定します。
ユーザは相手の名前を直接 \fIremotename\fR で指定可能です。
そうではない場合で、リモート IP アドレスが (数値形式でなく)
名前で指定された場合、その名前を相手の名前として使用します。
これに失敗すると、pppd は相手の名前に空文字列を使用します。
.LP
相手側を PAP で認証する際に、提供されるパスワードはまず秘密情報ファイルの
秘密情報と比較されます。
もしパスワードが秘密情報とマッチしなければ、
パスワードは crypt() を使用して暗号化され、再び秘密情報と比較されます。
このため相手側の認証に使用する秘密情報は
暗号化された形式で記録することができます。
\fIpapcrypt\fR オプションが与えられた場合、よりよいセキュリティのため
最初の (暗号化されていない) 比較対象は除外されます。
.LP
更にもし \fIlogin\fR オプションが指定されていれば、ユーザ名とパスワードも
システムパスワードデータベースでチェックされます。
このためシステム管理者は特定のユーザだけに PPP アクセスを
許可し、個々のユーザが使用できる IP アドレスの組を
制限するよう pap-secrets ファイルを設定することができます。
典型的には、\fIlogin\fR オプションを使う時に、
/etc/ppp/pap-secrets 中の秘密情報を "" とすることで、
相手が提供するいかなるパスワードにもマッチするようになります。
これにより、同じ秘密情報を 2 個所で必要とされることを避けることができます。
.LP
\fBlogin\fR オプションが使われている時には、更なる確認が行われます。
/etc/ppp/ppp.deny が存在して、ユーザがそこに記述されている場合、
認証は失敗します。 /etc/ppp/ppp.shells が存在して、ユーザの通常の
ログインシェルが記述されていない場合、認証は失敗します。
.LP
認証は IPCP (またはその他のネットワーク制御プロトコル)
が開始される前に納得のいくように完了している必要があります。
相手が自己証明することを求められている時に、認証に失敗すると、
\fIpppd\fR は (LCP をクローズすることで) リンクを切断します。
もし IPCP で得られたリモートホストの IP アドレスが受け入れられない
ものであった場合、IPCP はクローズされます。 IP パケットは IPCP が
オープンしている時だけ送受信可能です。
.LP
ローカルホストが一般的に認証を必要とする時でも、
接続を行い限定された IP アドレスの組の 1 つを使うために
自己証明ができないホストに対して、
接続を認める必要がある場合もあります。
もし相手側がこちらの認証要求を拒否した場合、pppd はそれを
ユーザ名とパスワードが空文字列である PAP 認証として扱います。
そこで、クライアント名とパスワードに空文字列を指定した 1 行を
pap-secrets ファイルに追加することで、自己証明を拒否する
ホストにも制限つきのアクセスを許可することができます。
.SH 経路制御
.LP
IPCP ネゴシエーションが成功した場合、
pppd
はカーネルに、PPP インタフェースで用いるローカル IP アドレスおよび
リモート IP アドレスを通知します。
これは、相手側と IP パケットを交換する
リンクのリモート終端への経路を作成するのに充分な情報です。
サーバ以外のマシンとの通信には、一般的には経路
テーブルや ARP (アドレス解決プロトコル; Address Resolution Protocol)
テーブルのさらなる更新が必要となります。
ほとんどの場合 \fIdefaultroute\fR や \fIproxyarp\fR オプションで十分ですが、
更なる解析が必要な場合もあります。
/etc/ppp/ip-up スクリプトが使用可能な場合があります。
.LP
インターネットへの接続を PPP インタフェース経由のみで行うマシンの
場合には、リモートホストを通るデフォルト経路の追加が
望ましい場合があります。
\fIdefaultroute\fR オプションは、IPCP が完了した際に pppd に
そのようなデフォルト経路を作成させ、リンクが切断されたときには
そのデフォルト経路を削除させます。
.LP
例えばサーバマシンが LAN に接続されている場合、LAN 上の他のホストが
リモートホストと通信できるようにするために proxy ARP の使用が
望ましい場合もあります。
\fIproxyarp\fR オプションを指定すると、pppd はリモートホストと
同一サブネット上にある (ブロードキャストと ARP をサポートし、動作中
かつ point-to-point やループバックでない) ネットワークインタフェースを
探します。
そのようなインタフェースが見つかった場合、pppd は
恒久的に公開された ARP エントリとしてリモートホストの IP アドレスと
その見つかったネットワークインタフェースのイーサネット (MAC) アドレスを
登録します。
.LP
\fIdemand\fR オプション使用時は、IPCP 起動時に
インタフェースの IP アドレスは設定済みです。
pppd がインタフェース設定に使用したものと同じアドレスを
ネゴシエーションできなかった場合には
(例えば ISP が動的に IP アドレスを割り当てる場合)、
pppd はインタフェースの IP アドレスをネゴシエートされたものに
変更する必要があります。
この場合既存の接続を破壊するかもしれませんので、
動的 IP 割り当てを行う相手と要求時ダイヤルを行うことは勧められません。
.SH 使用例
.LP
(ppp の配布のデフォルトの /etc/ppp/options ファイルと同じく)
以下の例では /etc/ppp/options ファイルは
\fIauth\fR オプションを含むものとします
.LP
おそらく最も一般的な pppd の使用方法は ISP へダイヤルアウトすることでしょう。
この場合次のコマンドを使用します。
.IP
pppd call isp
.LP
ここで /etc/ppp/peers/isp ファイルはシステム管理者が次のように設定します:
.IP
ttyS0 19200 crtscts
.br
connect '/usr/sbin/chat -v -f /etc/ppp/chat-isp'
.br
noauth
.LP
この例では、chat を使用して ISP のモデムにダイヤルし、
必要なログオンシーケンスを通過します。
/etc/ppp/chat-isp ファイルは chat が使用するスクリプトを含みます。
例えば次のようになっています:
.IP
ABORT "NO CARRIER"
.br
ABORT "NO DIALTONE"
.br
ABORT "ERROR"
.br
ABORT "NO ANSWER"
.br
ABORT "BUSY"
.br
ABORT "Username/Password Incorrect"
.br
"" "at"
.br
OK "at&d0&c1"
.br
OK "atdt2468135"
.br
"name:" "^Umyuserid"
.br
"word:" "\\qmypassword"
.br
"ispts" "\\q^Uppp"
.br
"~-^Uppp-~"
.LP
chat スクリプトの詳細については、
chat(8) のマニュアルページを参照してください。
.LP
pppd はまたダイヤルイン ppp サービスをユーザに提供するために使用可能です。
ユーザが既にログインアカウントを持っている場合には、
ppp サービスの最も簡単な設定方法は、
ユーザにそのアカウントでログインしてもらってから、
(setuid-root された) pppd を次のように実行することです。
.IP
pppd proxyarp
.LP
ユーザが PPP 機能を使用することを許すためには、
そのユーザのマシンのための IP アドレスを割り当て、
/etc/ppp/pap-secrets または /etc/ppp/chap-secrets (ユーザのマシンの PPP 実装が
どちらの認証方法をサポートするかに依存します)
にエントリを作成して、ユーザのマシンを認証可能とします。
例えば、Joe が "joespc" というマシンを持っていて、"server" というマシンへの
ダイヤルインおよび joespc.my.net という IP アドレスの使用が許されている場合、
次のようなエントリを /etc/ppp/pap-secrets または /etc/ppp/chap-secrets に
加えます:
.IP
joespc server "joe's secret" joespc.my.net
.LP
別の方法として、(例えば) "ppp" といったユーザ名を作成し、
そのログインシェルを pppd とし、
ホームディレクトリを /etc/ppp とする方法があります。
この方法で pppd を実行する場合に使用するオプションは
/etc/ppp/.ppprc に置くことができます。
.LP
もしあなたのシリアル接続がケーブル 1 本でなく、もっと複雑な場合には、
いくつかの制御文字がエスケープされるように
準備しておく必要があります。とりわけ、XON (^Q) および XOFF (^S) を、
\fIasyncmap a0000\fR を用いてエスケープすることはしばしば有効です。
パスが telnet を含む場合には、 ^] 文字も同様にエスケープ
(\fIasyncmap 200a0000\fR を指定) する必要があるでしょう。
パスが rlogin を含む場合には、rlogin クライアントの動作している側の
ホストで \fIescape ff\fR を指定する必要があるでしょう。これは、多くの
rlogin の実装がネットワーク透過でないためです。
それらの rlogin では、 0xff, 0xff, 0x73, 0x73 とそれに続く 8 バイトの
シーケンスをストリームから取り除きます。
.SH 診断
.LP
メッセージは LOG_DAEMON ファシリティを用いて syslog デーモンに
送られます (これは希望するファシリティを LOG_PPP マクロとして定義し、
pppd を再コンパイルすることで変更することができます)。
エラーメッセージやデバッグメッセージを見るためには、
/etc/syslogd.conf ファイルを編集して pppd からのメッセージが
希望する出力デバイスやファイルに書き出されるようにしておく必要があります。
.LP
\fIdebug\fR オプションは送受信されるすべての制御パケットの内容が
ログに記録されるようにします。対象となる制御パケットは、
すべての LCP, PAP, CHAP, IPCP パケットです。
この機能は、PPP ネゴシエーションがうまくいかない場合や
認証が失敗する場合の原因究明に効果的でしょう。
コンパイル時にデバッギングオプションを有効にしていた場合には、
\fIdebug\fR もまた他のデバッグメッセージを記録するために使われます。
.LP
.I pppd
プロセスに SIGUSR1 シグナルを送ってデバッギングを有効にすることが
できます。これはトグル動作します。
.SH スクリプト
pppd は処理の様々な段階においてスクリプトを起動し、
サイト固有の追加処理を行います。
これらのスクリプトは通常シェルスクリプトですが、
実行可能コードファイルであってもかまいません。
pppd はスクリプトが終了するまで待ちません。
スクリプトは root にて (実ユーザ ID および実効ユーザ ID とも 0 に設定して)
実行されますので、経路テーブルの更新や特権デーモンの実行が可能です。
これらのスクリプトの内容によってシステムセキュリティが危うくならないよう
注意してください。
pppd は標準入力・標準出力・標準エラー出力を /dev/null にリダイレクトし、
リンクの情報を与えるいくつかの環境変数を除いて環境変数を空にして、
スクリプトを実行します。
pppd が設定する環境変数を以下に示します:
.TP
.B DEVICE
使用しているシリアル tty デバイス名。
.TP
.B IFNAME
使用しているネットワークインタフェース名。
.TP
.B IPLOCAL
リンクのローカル側の IP アドレス。
IPCP が立ち上がった時のみ設定されます。
.TP
.B IPREMOTE
リンクのリモート側の IP アドレス。
IPCP が立ち上がった時のみ設定されます。
.TP
.B PEERNAME
相手の認証された名前。
相手が自己証明した場合のみ設定されます。
.TP
.B SPEED
tty デバイスのボーレート。
.TP
.B UID
pppd を起動したユーザの実ユーザ ID。
.P
pppd は、以下のスクリプトが存在すれば起動します。
存在しなくてもエラーではありません。
.TP
.B /etc/ppp/auth-up
リモートシステムが成功裏に自己証明した後で実行される
プログラムまたはスクリプトです。
次のものをパラメータとして実行されます。
.IP
\fIinterface-name peer-name user-name tty-device speed\fR
.IP
相手が自己証明しない場合には、
このスクリプトは実行されないことに注意してください。
例えば \fInoauth\fR オプションが使用される時がこれにあたります。
.TP
.B /etc/ppp/auth-down
/etc/ppp/auth-up が以前実行された後でリンクが落ちた時に実行される
プログラムまたはスクリプトです。
これは /etc/ppp/auth-up と同じパラメータを与えて、同じ方法で実行されます。
.TP
.B /etc/ppp/ip-up
そのリンクで IP パケットの送受信が行えるようになった時
(IPCP が完了した時) に実行されるプログラムまたはスクリプトです。
次のものをパラメータとして実行されます。
.IP
\fIinterface-name tty-device speed local-IP-address
remote-IP-address ipparam\fR
.TP
.B /etc/ppp/ip-down
そのリンクで IP パケットの送受信ができなくなった場合に実行される
プログラムまたはスクリプトです。
このスクリプトは /etc/ppp/ip-up スクリプトで行った変更を
元にもどすために用いられます。
これは ip-up と同じパラメータを与えて、同じ方法で実行されます。
.TP
.B /etc/ppp/ipx-up
そのリンクで IPX パケットの送受信が行えるようになった時
(IPXCP が完了した時) に実行されるプログラムまたはスクリプトです。
次のものをパラメータとして実行されます。
.IP
\fIinterface-name tty-device speed network-number local-IPX-node-address
remote-IPX-node-address local-IPX-routing-protocol remote-IPX-routing-protocol
local-IPX-router-name remote-IPX-router-name ipparam pppd-pid\fR
.IP
local-IPX-routing-protocol および remote-IPX-routing-protocol のフィールドは
以下のいずれかです:
.IP
NONE 経路プロトコルが無いことを示します
.br
RIP RIP/SAP を使うべきであることを示します
.br
NLSP Novell NLSP を使うべきであることを示します
.br
RIP NLSP RIP/SAP と NLSP の両方を使うべきであることを示します
.TP
.B /etc/ppp/ipx-down
そのリンクで IPX パケットの送受信ができなくなった場合に実行される
プログラムまたはスクリプトです。
このスクリプトは /etc/ppp/ipx-up スクリプトで行った変更を
元にもどすために用いられます。
これは ipx-up と同じパラメータを与えて、同じ方法で実行されます。
.SH 関連ファイル
.TP
.B /var/run/ppp\fIn\fB.pid \fR(BSD または Linux), \fB/etc/ppp/ppp\fIn\fB.pid \fR(その他)
ppp インタフェースユニット \fIn\fR に対応する pppd プロセスの
プロセス ID が記録されます。
.TP
.B /etc/ppp/pap-secrets
PAP 認証で使用するユーザ名、パスワード、IP アドレスを格納します。
このファイルは root が所有し、他のユーザは読み書きできてはなりません。
そうでない場合 pppd は警告ログを行います。
.TP
.B /etc/ppp/chap-secrets
CHAP 認証で使用する名前、秘密情報、IP アドレスを格納します。
このファイルは root が所有し、他のユーザは読み書きできてはなりません。
そうでない場合 pppd は警告ログを行います。
.TP
.B /etc/ppp/options
pppd
のシステムデフォルトオプションを記述します。
ユーザデフォルトオプションおよびコマンド
ラインオプションが読まれる前に読み込まれます。
.TP
.B ~/.ppprc
ユーザ毎のデフォルトオプションを記述します。
/etc/ppp/options.\fIttyname が読まれる前に読み込まれます。
.TP
.B /etc/ppp/options.\fIttyname
各シリアルポートのシステムデフォルトオプションを指定します。
~/.ppprc の後で読まれます。
このファイル名の \fIttyname\fR 部分の構成にあたり、
まず /dev/ が (存在すれば) ポート名から除かれ、
残ったスラッシュがドットに置換されます。
.TP
.B /etc/ppp/peers
pppd が非 root ユーザによって起動されたとしても
特権オプションを含んでかまわないオプションファイルを含むディレクトリです。
システム管理者はオプションファイルをこのディレクトリ中に作成することにより、
非特権ユーザが相手の認証を要さずにダイヤルアウト可能とします。
しかし、信頼関係のある相手のみ可能です。
.TP
.B /etc/ppp/ppp.deny
システムのパスワードによる PAP 認証を使わせないユーザを記述します。
.TP
.B /etc/ppp/ppp.shells
システムのパスワードによる PAP 認証ログインのために適切なシェルを
記述します。
.SH 関連項目
.IR chat(8),
.IR ppp(8)
.TP
.B RFC1144
Jacobson, V.
\fICompressing TCP/IP headers for low-speed serial links.\fR
February 1990.
.TP
.B RFC1321
Rivest, R.
.I The MD5 Message-Digest Algorithm.
April 1992.
.TP
.B RFC1332
McGregor, G.
.I PPP Internet Protocol Control Protocol (IPCP).
May 1992.
.TP
.B RFC1334
Lloyd, B.; Simpson, W.A.
.I PPP authentication protocols.
October 1992.
.TP
.B RFC1661
Simpson, W.A.
.I The Point\-to\-Point Protocol (PPP).
July 1994.
.TP
.B RFC1662
Simpson, W.A.
.I PPP in HDLC-like Framing.
July 1994.
.SH 注意
以下のシグナルが
pppd
に送られた場合、ここで説明する効果が得られます。
.TP
.B SIGINT, SIGTERM
これらのシグナルを受信した場合、pppd は (LCP をクローズすることで)
リンクを切断し、シリアルデバイスの設定を復元して、プログラムを終了します。
.TP
.B SIGHUP
物理層のリンク切断を指示します。pppd はシリアルデバイスの設定を復元し、
シリアルデバイスを閉じます。
\fIpersist\fR または \fIdemand\fR のオプションが指定されている場合、pppd は
シリアルデバイスを再オープンし、(抑止期間を置いてから)
新しい接続を始めようとします。
そうでない場合は、pppd は終了します。
このシグナルを抑止期間に受けると、pppd は抑止期間をすぐに終了します。
.TP
.B SIGUSR1
このシグナルは、\fIdebug\fR オプションの状態を反転します。
.TP
.B SIGUSR2
このシグナルは、
pppd
に圧縮に付いて再びネゴシエートさせます。
これは、致命的な伸長エラーの結果として
圧縮を止めた後で、再び圧縮を有効にするために便利です。
(致命的な伸長エラーは一般にどちらかの実装上の
バグを示します。)
.SH 作者
Paul Mackerras (Paul.Mackerras@cs.anu.edu.au) が、
Drew Perkins,
Brad Clements,
Karl Fox,
Greg Christy,
Brad Parker
の作業を元に作成しました。
|