Özet
pppd [ seçenekler ]
Açıklama
PPP, çevirmeli modemler, DSL bağlantıları ve diğer birçok noktadan noktaya (point-to-point) bağlantı türü üzerinden internet bağlantısı kurmak için kullanılan protokoldür. pppd arka plan programı (daemon), başka bir sistemle (karşı taraf [peer] olarak adlandırılır) bir PPP bağlantısı kurmak ve sürdürmek ve bağlantının her bir ucu için İnternet Protokolü (IP) adreslerini müzakere etmek üzere çekirdek (kernel) PPP sürücüsü ile birlikte çalışır. pppd ayrıca karşı tarafın kimliğini doğrulabilir ve/veya karşı tarafa kimlik doğrulama bilgisi sağlayabilir. PPP, IP'nin yanı sıra diğer ağ protokolleriyle de kullanılabilir, ancak bu tür kullanımlar giderek daha nadir hale gelmektedir.
Sık Kullanılan Seçenekler
ttyname Karşı tarafla iletişim kurmak için ttyname adlı seri portu kullanır. Açılacak aygıtın adını oluşturmak için ttyname değerinin başına "/dev/" eklenir. Herhangi bir aygıt adı belirtilmezse veya standart girdiye bağlı terminalin adı verilirse, pppd bu terminali kullanır ve kendisini arka plana almak için çatallama (fork) yapmaz. Ayrıcalıklı bir kaynaktan gelen bu seçeneğin değeri, ayrıcalıklı olmayan bir kullanıcı tarafından geçersiz kılınamaz.
speed Ondalık sayı olan bir seçenek, seri aygıt için istenen baud hızı olarak kabul edilir. 4.4BSD ve NetBSD gibi sistemlerde herhangi bir hız belirtilebilir. Diğer sistemler (örneğin Linux, SunOS) yalnızca yaygın olarak kullanılan baud hızlarını destekler.
asyncmap harita Bu seçenek, bağlantının bu ucu için Async-Control-Character-Map (ACCM) ayarlarını yapar. ACCM, 0 ile 31 arasındaki değerlere sahip ASCII kontrol karakterlerinin her biri için bir tane olmak üzere 32 bitten oluşan bir kümedir; burada 1 biti, ilgili kontrol karakterinin bu sisteme gönderilen PPP paketlerinde kullanılmaması gerektiğini gösterir. Harita, en önemsiz bitin (00000001) 0 karakterini ve en önemli bitin (80000000) 31 karakterini temsil ettiği bir onaltılık sayı (başında 0x olmadan) olarak kodlanır. pppd, karşı taraftan bu karakterleri 2 baytlık bir kaçış (escape) dizisi olarak göndermesini isteyecektir. Birden fazla asyncmap seçeneği verilirse, değerler mantıksal VEYA (OR) işlemine tabi tutulur. Hiçbir asyncmap seçeneği verilmezse varsayılan değer sıfırdır, bu nedenle pppd karşı taraftan hiçbir kontrol karakterini kaçış karakteriyle korumamasını isteyecektir. İletilen karakterleri kaçış karakteriyle korumak için escape seçeneğini kullanın.
auth Ağ paketlerinin gönderilmesine veya alınmasına izin vermeden önce karşı tarafın kendi kimliğini doğrulamasını gerektirir. Sistemde varsayılan bir rota (default route) varsa bu seçenek varsayılandır. Ne bu seçenek ne de noauth seçeneği belirtilmemişse, pppd karşı tarafın yalnızca sistemin halihazırda bir rotaya sahip olmadığı IP adreslerini kullanmasına izin verecektir.
call ad Seçenekleri /etc/ppp/peers/ad dosyasından okur. Bu dosya, pppd root tarafından çalıştırılmıyor olsa bile noauth gibi ayrıcalıklı seçenekler içerebilir. ad dizesi / ile başlayamaz veya bir yol adı bileşeni olarak .. içeremez. Seçenekler dosyasının biçimi aşağıda açıklanmıştır.
connect betik Genellikle PPP protokolü başlatılmadan önce bağlantıyı hazırlamak için yapılması gereken bir şeyler vardır; örneğin çevirmeli bir modemde, uygun telefon numarasını çevirmesi için modeme komutlar gönderilmesi gerekir. Bu seçenek, pppd'nin PPP müzakeresini başlatmaya çalışmadan önce (bir kabuğa geçirerek) yürüteceği bir komutu belirtir. chat(8) programı, modeme rastgele dizeler gönderme ve alınan karakterlere yanıt verme yöntemi sağladığı için burada genellikle yararlıdır. Ayrıcalıklı bir kaynaktan gelen bu seçeneğin değeri, ayrıcalıklı olmayan bir kullanıcı tarafından geçersiz kılınamaz.
crtscts pppd'nin RS-232 arayüzündeki RTS ve CTS sinyallerini kullanarak donanım akış kontrolünü (hardware flow control) kullanacak şekilde seri portu ayarlamasını belirtir. crtscts, nocrtscts, cdtrcts veya nocdtrcts seçeneklerinden hiçbiri verilmezse, seri port için donanım akış kontrolü ayarı değiştirilmeden bırakılır. Bazı seri portlar (Macintosh seri portları gibi) gerçek bir RTS çıkışına sahip değildir. Bu tür seri portlar, tek yönlü akış kontrolü uygulamak için bu modu kullanır. Seri port, modem tarafından talep edildiğinde (CTS aracılığıyla) iletimi askıya alacak, ancak bilgisayara göndermeyi durdurmasını modemden talep edemeyecektir. Bu mod, DTR'yi bir modem kontrol hattı olarak kullanma yeteneğini korur.
defaultroute IPCP müzakeresi başarıyla tamamlandığında, karşı tarafı ağ geçidi (gateway) olarak kullanarak sistem yönlendirme tablolarına varsayılan bir rota ekler. Bu girdi, PPP bağlantısı koptuğunda kaldırılır. nodefaultroute seçeneği belirtilmişse bu seçenek ayrıcalıklıdır.
disconnect betik pppd bağlantıyı sonlandırdıktan sonra, betik tarafından belirtilen komutu bir kabuğa geçirerek yürütür. Bu komut, örneğin donanım modem kontrol sinyallerinin mevcut olmaması durumunda modemin telefonu kapatmasını sağlamak için modeme komutlar gönderebilir. Modem zaten telefonu kapatmışsa disconnect betiği çalıştırılmaz. Ayrıcalıklı bir kaynaktan gelen bu seçeneğin değeri, ayrıcalıklı olmayan bir kullanıcı tarafından geçersiz kılınamaz.
escape xx,yy,... İletim sırasında belirli karakterlerin kaçış karakteriyle korunması gerektiğini belirtir (karşı tarafın kendi async kontrol karakter haritasıyla bunların kaçış karakteriyle korunmasını isteyip istemediğine bakılmaksızın). Kaçış karakteriyle korunacak karakterler, virgülle ayrılmış onaltılık sayılardan oluşan bir liste olarak belirtilir. Yalnızca kontrol karakterlerinin belirtilmesine izin veren asyncmap seçeneğinin aksine, escape seçeneği için neredeyse her karakterin belirtilebileceğini unutmayın. Kaçış karakteriyle korunamayacak karakterler, onaltılık değerleri 0x20 - 0x3f veya 0x5e olanlardır.
file ad Seçenekleri ad dosyasından okur (biçim aşağıda açıklanmıştır). Dosya, pppd'yi çağıran kullanıcı tarafından okunabilir olmalıdır.
init betik Seri hattı başlatmak için betik tarafından belirtilen komutu bir kabuğa geçirerek yürütür. Bu betik, modemi otomatik yanıtlamayı etkinleştirecek şekilde yapılandırmak için genellikle chat(8) programını kullanır. Ayrıcalıklı bir kaynaktan gelen bu seçeneğin değeri, ayrıcalıklı olmayan bir kullanıcı tarafından geçersiz kılınamaz.
lock Aygıta özel erişim sağlamak için pppd'nin seri aygıt için UUCP tarzı bir kilit dosyası (lock file) oluşturması gerektiğini belirtir.
mru n MRU [Maximum Receive Unit - Maksimum Alım Birimi] değerini n olarak ayarlar. pppd, karşı taraftan en fazla n baytlık paketler göndermesini isteyecektir. n değeri 128 ile 16384 arasında olmalıdır; varsayılan değer 1500'dür. Çok yavaş bağlantılarda 296 değeri iyi çalışır (TCP/IP üstbilgisi için 40 bayt + 256 bayt veri). IPv6 protokolü için MRU'nun en az 1280 olması gerektiğini unutmayın.
mtu n MTU [Maximum Transmit Unit - Maksimum İletim Birimi] değerini n olarak ayarlar. Karşı taraf MRU müzakeresi yoluyla daha küçük bir değer talep etmediği sürece, pppd çekirdek ağ kodunun PPP ağ arayüzü üzerinden en fazla n baytlık veri paketleri göndermesini talep edecektir. IPv6 protokolü için MTU'nun en az 1280 olması gerektiğini unutmayın.
passive LCP'de "passive" seçeneğini etkinleştirir. Bu seçenekle pppd bir bağlantı başlatmaya çalışacaktır; karşı taraftan yanıt alınamazsa pppd, bu seçenek olmadığında yapacağı gibi çıkmak yerine, karşı taraftan geçerli bir LCP paketi gelmesini pasif bir şekilde bekleyecektir.
Seçenekler
ipv6
active-filter filtre-ifadesi Hangi paketlerin bağlantı etkinliği olarak kabul edileceğini ve dolayısıyla boşta kalma zamanlayıcısını sıfırlayacağını veya bağlantının isteğe bağlı arama (demand-dialing) modunda kurulmasına neden olacağını belirlemek için veri paketlerine uygulanacak bir paket filtresi belirtir. Bu seçenek, bağlantı üzerinden düzenli olarak gönderilen veya alınan paketler (örneğin yönlendirme bilgi paketleri) varsa ve bunlar olmasaydı bağlantının boşta görünmesini engelleyecekse, idle seçeneği ile birlikte kullanışlıdır. filtre-ifadesi sözdizimi, ether ve arp gibi bir PPP bağlantısı için uygun olmayan niteleyicilere izin verilmemesi dışında tcpdump(1) için açıklandığı gibidir. Genellikle, ifadedeki boşlukların kabuk tarafından yorumlanmasını önlemek için filtre ifadesi tek tırnak içine alınmalıdır. Bu seçenek şu anda yalnızca Linux altında mevcuttur ve çekirdeğin PPP filtreleme desteği (CONFIG_PPP_FILTER) içerecek şekilde yapılandırılmış olmasını gerektirir. inbound ve outbound niteleyicilerini kullanarak gelen ve giden paketlere farklı kısıtlamalar uygulamanın mümkün olduğunu unutmayın.
allow-ip adres(ler)i Karşı tarafların kendilerini doğrulamadan belirtilen IP adresini veya alt ağı kullanmalarına izin verir. Parametre, sırlar (secrets) dosyalarındaki izin verilen IP adresleri listesinin her bir öğesi için olduğu gibi çözümlenir (aşağıdaki KİMLİK DOĞRULAMA bölümüne bakın).
allow-number numara
Karşı tarafların belirtilen telefon numarasından bağlanmasına izin verir. Sondaki bir * karakteri, baştaki kısımla başlayan tüm numaralarla eşleşecektir.
bsdcomp nr,nt BSD-Compress şemasını kullanarak karşı tarafın gönderdiği paketleri maksimum nr bitlik kod boyutuyla sıkıştırmasını talep eder ve karşı tarafa gönderilen paketlerin maksimum nt bitlik kod boyutuyla sıkıştırılmasını kabul eder. nt belirtilmezse, varsayılan olarak nr için verilen değere ayarlanır. nr ve nt için 9 ile 15 arasındaki değerler kullanılabilir; daha büyük değerler daha iyi sıkıştırma sağlar ancak sıkıştırma sözlükleri için daha fazla çekirdek belleği tüketir. Alternatif olarak, nr veya nt için 0 değeri, ilgili yöndeki sıkıştırmayı devre dışı bırakır. BSD-Compress sıkıştırmasını tamamen devre dışı bırakmak için nobsdcomp veya bsdcomp 0 seçeneğini kullanın.
cdtrcts Seri porttaki veri akışını kontrol etmek için standart olmayan bir donanım akış kontrolü (yani DTR/CTS) kullanır. crtscts, nocrtscts, cdtrcts veya nocdtrcts seçeneklerinden hiçbiri verilmezse, seri port için donanım akış kontrolü ayarı değiştirilmeden bırakılır. Bazı seri portlar (Macintosh seri portları gibi) gerçek bir RTS çıkışına sahip değildir. Bu tür seri portlar, gerçek çift yönlü akış kontrolü uygulamak için bu modu kullanır. Bunun bedeli, bu akış kontrolü modunun DTR'nin bir modem kontrol hattı olarak kullanılmasına izin vermemesidir.
chap-interval n Bu seçenek verilirse, pppd her n saniyede bir karşı tarafa yeniden meydan okuyacaktır (rechallenge).
chap-max-challenge n Maksimum CHAP meydan okuma (challenge) iletim sayısını n olarak ayarlar (varsayılan 10).
chap-restart n CHAP yeniden başlatma aralığını (meydan okumalar için yeniden iletim zaman aşımı) n saniye olarak ayarlar (varsayılan 3).
connect-delay n Bağlantı betiği bittikten sonra karşı taraftan geçerli bir PPP paketi gelmesi için en fazla n milisaniye bekler. Bu sürenin sonunda veya karşı taraftan geçerli bir PPP paketi alındığında, pppd ilk LCP paketini göndererek müzakereyi başlatacaktır. Varsayılan değer 1000'dir (1 saniye). Bu bekleme süresi yalnızca connect veya pty seçeneği kullanıldığında geçerlidir.
debug Bağlantı hata ayıklama olanaklerini etkinleştirir. Bu seçenek verilirse, pppd gönderilen veya alınan tüm kontrol paketlerinin içeriğini okunabilir bir biçimde günlüğe kaydeder. Paketler, daemon tesisi (facility) ve debug düzeyi (level) ile syslog aracılığıyla günlüklenir. Bu bilgiler, /etc/syslog.conf dosyası uygun şekilde ayarlanarak bir dosyaya yönlendirilebilir (bkz. syslog.conf(5)).
default-asyncmap Asyncmap müzakeresini devre dışı bırakarak, hem iletim hem de alım yönü için tüm kontrol karakterlerinin kaçış karakteriyle korunmasını zorunlu kılar.
default-mru MRU [Maximum Receive Unit - Maksimum Alım Birimi] müzakeresini devre dışı bırakır. Bu seçenekle pppd, hem iletim hem de alım yönü için varsayılan MRU değeri olan 1500 baytı kullanacaktır.
deflate nr,nt Deflate şemasını kullanarak karşı tarafın gönderdiği paketleri maksimum 2nr baytlık bir pencere boyutuyla sıkıştırmasını talep eder ve karşı tarafa gönderilen paketlerin maksimum 2nt baytlık bir pencere boyutuyla sıkıştırılmasını kabul eder. nt belirtilmezse, varsayılan olarak nr için verilen değere ayarlanır. nr ve nt için 9 ile 15 arasındaki değerler kullanılabilir; daha büyük değerler daha iyi sıkıştırma sağlar ancak sıkıştırma sözlükleri için daha fazla çekirdek belleği tüketir. Alternatif olarak, nr veya nt için 0 değeri, ilgili yöndeki sıkıştırmayı devre dışı bırakır. Deflate sıkıştırmasını tamamen devre dışı bırakmak için nodeflate veya deflate 0 seçeneğini kullanın. (Not: Karşı taraf her ikisini de yapabiliyorsa, pppd BSD-Compress yerine Deflate sıkıştırmasını tercih eder.)
demand Bağlantıyı yalnızca talep üzerine, yani veri trafiği olduğunda başlatır. Bu seçenekle, uzak IP adresi kullanıcı tarafından komut satırında veya bir seçenekler dosyasında belirtilmelidir. pppd başlangıçta arayüzü yapılandıracak ve karşı tarafa bağlanmadan IP trafiği için etkinleştirecektir. Trafik mevcut olduğunda, pppd karşı tarafa bağlanacak ve müzakere, kimlik doğrulama vb. işlemleri gerçekleştirecektir. Bu tamamlandığında, pppd veri paketlerini (yani IP paketlerini) bağlantı üzerinden aktarmaya başlayacaktır.
demand seçeneği persist seçeneğini de beraberinde getirir. Bu davranış istenmiyorsa, demand seçeneğinden sonra nopersist seçeneğini kullanın. idle ve holdoff seçenekleri de demand seçeneği ile birlikte kullanışlıdır.
domain d Kimlik doğrulama amacıyla yerel ana bilgisayar adına d alan adını ekler. Örneğin, gethostname() porsche adını döndürüyor ancak tam nitelikli alan adı porsche.Quotron.COM ise domain Quotron.COM belirtebilirsiniz. pppd daha sonra sırlar dosyasında sırları aramak için porsche.Quotron.COM adını kullanacak ve kendisini karşı tarafa doğrularken karşı tarafa gönderilecek varsayılan ad olarak bu adı kullanacaktır. Bu seçenek ayrıcalıklıdır.
dryrun dryrun seçeneği ile pppd, komut satırını ve seçenekler dosyalarını çözümledikten ve seçenek değerlerini kontrol ettikten sonra, ancak bağlantıyı başlatmadan önce ayarlanmış olan tüm seçenek değerlerini yazdıracak ve ardından çıkacaktır. Seçenek değerleri info düzeyinde günlüklenir ve standart çıktıdaki aygıt pppd'nin karşı tarafla iletişim kurmak için kullanacağı aygıt olmadığı sürece standart çıktıya da yazdırılır.
dump dump seçeneği ile pppd, ayarlanmış olan tüm seçenek değerlerini yazdıracaktır. Bu seçenek dryrun seçeneğine benzer, ancak pppd çıkmak yerine normal şekilde devam eder.
endpoint
hide-password PAP paketlerinin içeriğini günlüklerken, bu seçenek pppd'nin parola dizesini günlükten hariç tutmasına neden olur. Bu varsayılan davranıştır.
holdoff n Bağlantı sonlandırıldıktan sonra bağlantıyı yeniden başlatmadan önce kaç saniye bekleneceğini belirtir. Bu seçenek yalnızca persist veya demand seçeneği kullanıldığında etkilidir. Bağlantı boşta olduğu için sonlandırılmışsa holdoff süresi uygulanmaz.
idle n Bağlantı n saniye boyunca boşta kalırsa pppd'nin bağlantıyı kesmesi gerektiğini belirtir. Gönderilen veya alınan hiçbir veri paketi (yani IP paketi) olmadığında bağlantı boştadır. Not: Bu seçeneğin demand seçeneği olmadan persist seçeneği ile kullanılması önerilmez. active-filter seçeneği verilirse, belirtilen etkinlik filtresi tarafından reddedilen veri paketleri de bağlantının boşta kalması olarak sayılır.
ipcp-accept-local Bu seçenekle pppd, yerel IP adresi bir seçenekte belirtilmiş olsa bile karşı tarafın bizim yerel IP adresimiz hakkındaki fikrini kabul edecektir.
ipcp-accept-remote Bu seçenekle pppd, uzak IP adresi bir seçenekte belirtilmiş olsa bile karşı tarafın kendi (uzak) IP adresi hakkındaki fikrini kabul edecektir.
ipcp-max-configure n Maksimum IPCP configure-request iletim sayısını n olarak ayarlar (varsayılan 10).
ipcp-max-failure n configure-Reject göndermeye başlamadan önce döndürülen maksimum IPCP configure-NAK sayısını n olarak ayarlar (varsayılan 10).
ipcp-max-terminate n Maksimum IPCP terminate-request iletim sayısını n olarak ayarlar (varsayılan 3).
ipcp-restart n IPCP yeniden başlatma aralığını (yeniden iletim zaman aşımı) n saniye olarak ayarlar (varsayılan 3).
ipparam dize ip-up ve ip-down betiklerine fazladan bir parametre sağlar. Bu seçenek verilirse, sağlanan dize bu betiklere 6. parametre olarak iletilir.
ipv6cp-max-configure n Maksimum IPv6CP configure-request iletim sayısını n olarak ayarlar (varsayılan 10).
ipv6cp-max-failure n configure-Reject göndermeye başlamadan önce döndürülen maksimum IPv6CP configure-NAK sayısını n olarak ayarlar (varsayılan 10).
ipv6cp-max-terminate n Maksimum IPv6CP terminate-request iletim sayısını n olarak ayarlar (varsayılan 3).
ipv6cp-restart n IPv6CP yeniden başlatma aralığını (yeniden iletim zaman aşımı) n saniye olarak ayarlar (varsayılan 3).
ipx IPXCP ve IPX protokollerini etkinleştirir. Bu seçenek şu anda yalnızca Linux altında ve yalnızca çekirdeğiniz IPX desteği içerecek şekilde yapılandırılmışsa desteklenmektedir.
ipx-network n IPXCP configure request çerçevesindeki IPX ağ numarasını onaltılık bir sayı olan n (başında 0x olmadan) olarak ayarlar. Geçerli bir varsayılan değer yoktur. Bu seçenek belirtilmezse, ağ numarası karşı taraftan alınır. Karşı tarafta ağ numarası yoksa, IPX protokolü başlatılmayacaktır.
ipx-node n:m IPX düğüm numaralarını ayarlar. İki düğüm numarası birbirinden iki nokta üst üste karakteri ile ayrılır. İlk sayı n yerel düğüm numarasıdır. İkinci sayı m karşı tarafın düğüm numarasıdır. Her düğüm numarası en fazla 10 hane uzunluğunda onaltılık bir sayıdır. ipx-network üzerindeki düğüm numaraları benzersiz olmalıdır. Geçerli bir varsayılan değer yoktur. Bu seçenek belirtilmezse düğüm numaraları karşı taraftan alınır.
ipx-router-name
ipx-routing n Bu seçenek tarafından alınacak yönlendirme protokolünü ayarlar. Birden fazla ipx-routing örneği belirtilebilir. ipx-routing'in tek örneği olarak 'none' seçeneği (0) belirtilebilir. Değerler HİÇBİRİ (NONE) için 0, RIP/SAP için 2 ve NLSP için 4 olabilir.
ipxcp-accept-local ipx-node seçeneğinde belirtilen düğüm numarası için karşı tarafın NAK yanıtını kabul eder. Bir düğüm numarası belirtilmişse ve sıfırdan farklıysa, varsayılan davranış bu değerin kullanılmasında ısrar etmektir. Bu seçeneği eklerseniz, karşı tarafın düğüm numarası girdisini geçersiz kılmasına izin vermiş olursunuz.
ipxcp-accept-network ipx-network seçeneğinde belirtilen ağ numarası için karşı tarafın NAK yanıtını kabul eder. Bir ağ numarası belirtilmişse ve sıfırdan farklıysa, varsayılan davranış bu değerin kullanılmasında ısrar etmektir. Bu seçeneği eklerseniz, karşı tarafın düğüm numarası girdisini geçersiz kılmasına izin vermiş olursunuz.
ipxcp-accept-remote configure request çerçevesinde belirtilen karşı tarafın ağ numarasını kullanır. Karşı taraf için bir düğüm numarası belirtilmişse ve bu seçenek belirtilmemişse, karşı taraf sizin belirttiğiniz değeri kullanmaya zorlanacaktır.
ipxcp-max-configure n Sistemin göndereceği maksimum IPXCP configure request çerçevesi sayısını n olarak ayarlar. Varsayılan değer 10'dur.
ipxcp-max-failure n Yerel sistemin seçenekleri reddetmeden önce göndereceği maksimum IPXCP NAK çerçevesi sayısını ayarlar. Varsayılan değer 3'tür.
ipxcp-max-terminate n Yerel sistemin karşı tarafın kendilerini dinlemediğini kabul etmesinden önceki maksimum IPXCP terminate request çerçevesi sayısını ayarlar. Varsayılan değer 3'tür.
kdebug n Çekirdek düzeyindeki PPP sürücüsünde hata ayıklama kodunu etkinleştirir. Bağımsız değişken değerleri ilgili çekirdek sürücüsüne bağlıdır, ancak genel olarak 1 değeri genel çekirdek hata ayıklama mesajlarını etkinleştirecektir. (Bu mesajların genellikle yalnızca çekirdek sürücüsünün kendisinde hata ayıklamak için yararlı olduğunu unutmayın.) Linux 2.2.x çekirdek sürücüsü için değer, bitlerin toplamıdır: genel hata ayıklama mesajlarını etkinleştirmek için 1, alınan paketlerin içeriğinin yazdırılmasını talep etmek için 2 ve iletilen paketlerin içeriğinin yazdırılmasını talep etmek için 4. Çoğu sistemde, çekirdek tarafından yazdırılan mesajlar syslog(1) tarafından /etc/syslog.conf yapılandırma dosyasında yönlendirildiği şekilde bir dosyaya günlüklenir.
ktune pppd'nin çekirdek ayarlarını uygun şekilde değiştirmesini etkinleştirir. Linux altında, proxyarp seçeneği kullanılıyorsa pppd IP iletmeyi (IP forwarding) etkinleştirecek (yani /proc/sys/net/ipv4/ip_forward değerini 1 yapacak) ve yerel adres değişirse talep (demand) modunda dinamik IP adresi seçeneğini etkinleştirecektir (yani /proc/sys/net/ipv4/ip_dynaddr değerini 1 yapacaktır).
lcp-echo-failure n Bu seçenek verilirse, geçerli bir LCP echo-reply alınmadan n tane LCP echo-request gönderilirse pppd karşı tarafın çöktüğünü varsayacaktır. Bu gerçekleşirse, pppd bağlantıyı sonlandıracaktır. Bu seçeneğin kullanılması, lcp-echo-interval parameteresi için sıfır olmayan bir değer gerektirir. Bu seçenek, donanım modem kontrol hatlarının bulunmadığı durumlarda, fiziksel bağlantı koptuktan sonra (örneğin modem telefonu kapattığında) pppd'nin sonlandırılmasını sağlamak için kullanılabilir.
lcp-echo-interval n Bu seçenek verilirse, pppd karşı tarafa her n saniyede bir LCP echo-request çerçevesi gönderecektir. Normalde karşı taraf, echo-request'e bir echo-reply göndererek yanıt vermelidir. Bu seçenek, karşı tarafın artık bağlı olmadığını tespit etmek için lcp-echo-failure seçeneği ile birlikte kullanılabilir.
lcp-max-configure n Maksimum LCP configure-request iletim sayısını n olarak ayarlar (varsayılan 10).
lcp-max-failure n configure-Reject göndermeye başlamadan önce döndürülen maksimum LCP configure-NAK sayısını n olarak ayarlar (varsayılan 10).
lcp-max-terminate n Maksimum LCP terminate-request iletim sayısını n olarak ayarlar (varsayılan 3).
lcp-restart n LCP yeniden başlatma aralığını (yeniden iletim zaman aşımı) n saniye olarak ayarlar (varsayılan 3).
linkname ad Bağlantının mantıksal adını ad olarak ayarlar. pppd, /var/run dizininde (veya bazı sistemlerde /etc/ppp dizininde) kendi süreç kimliğini (process ID) içeren ppp-ad.pid adında bir dosya oluşturacaktır. Bu, belirli bir karşı sisteme olan bağlantıdan hangi pppd örneğinin sorumlu olduğunu belirlemede yararlı olabilir. Bu ayrıcalıklı bir seçenektir.
local Modem kontrol hatlarını kullanmaz. Bu seçenekle pppd, modemden gelen CD (Carrier Detect - Taşıyıcı Algılama) sinyalinin durumunu yoksayacak ve DTR (Data Terminal Ready - Veri Terminali Hazır) sinyalinin durumunu değiştirmeyecektir.
logfd n Günlük mesajlarını n dosya tanımlayıcısına (file descriptor) gönderir. pppd, günlük mesajlarını en fazla bir dosyaya veya dosya tanımlayıcısına gönderecektir (ayrıca günlük mesajlarını syslog'a da gönderir), so bu seçenek ile logfile seçeneği birbirini dışlar (mutually exclusive). Seri port standart çıktıda zaten açık olmadığı sürece, pppd'nin günlük mesajlarını standart çıktıya (dosya tanımlayıcısı 1) göndermesi varsayılandır.
logfile dosya_adı Günlük mesajlarını dosya_adı dosyasına ekler (ayrıca günlük mesajlarını syslog'a da gönderir). Dosya, pppd'yi çağıran kullanıcının ayrıcalıklarıyla, ekleme (append) modunda açılır.
login PAP kullanarak karşı tarafın kimliğini doğrulamak için sistem parola veritabanını kullanır ve kullanıcıyı sistem wtmp dosyasına kaydeder. Erişime izin verilmesi için karşı tarafın sistem parola veritabanının yanı sıra /etc/ppp/pap-secrets dosyasında da bir girdisi olması gerektiğini unutmayın.
maxconnect n Bağlantı n saniye boyunca ağ trafiğine açık kaldığında bağlantıyı sonlandırır (yani ilk ağ kontrol protokolü kurulduktan n saniye sonra).
maxfail n Ardışık n başarısız bağlantı girişiminden sonra sonlandırır. 0 değeri sınır olmadığı anlamına gelir. Varsayılan değer 10'dur.
modem Modem kontrol hatlarını kullanır. Bu seçenek varsayılandır. Bu seçenekle pppd, seri aygıtı açarken modemden gelen CD (Carrier Detect) sinyalinin etkinleştirilmesini bekleyecek (bir connect betiği belirtilmemişse) ve bağlantı sonlandırıldığında ve connect betiğini yürütmeden önce DTR (Data Terminal Ready) sinyalini kısa bir süre için düşürecektir. Ultrix'te bu seçenek, crtscts seçeneğinde olduğu gibi donanım akış kontrolünü ifade eder.
mp
PPP çoklu bağlantı (multilink) kullanımını etkinleştirir; bu, multilink seçeneğinin bir takma adıdır (alias). Bu seçenek şu anda yalnızca Linux altında mevcuttur.
mppe-stateful MPPE'nin durum bilgili (stateful) modu kullanmasına izin verir. Yine de ilk olarak durum bilgisiz (stateless) mod denenir. Varsayılan davranış durum bilgili moda izin vermemektir.
mpshortseq Çoklu bağlantı üstbilgilerinde 24 bitlik sıra numaraları yerine kısa (12 bitlik) sıra numaralarının kullanılmasını etkinleştirir. Bu seçenek yalnızca Linux altında mevcuttur ve yalnızca çoklu bağlantı etkinleştirilmişse etkilidir (bkz. multilink seçeneği).
mrru n Maksimum Yeniden Yapılandırılmış Alım Birimini (Maximum Reconstructed Receive Unit) n olarak ayarlar. MRRU, bir çoklu bağlantı demetinde alınan bir paket için maksimum boyuttur ve tekil bağlantılar için MRU'ya benzer. Bu seçenek şu anda yalnızca Linux altında mevcuttur ve yalnızca çoklu bağlantı etkinleştirilmişse etkilidir (bkz. multilink seçeneği).
ms-dns
ms-wins
multilink PPP çoklu bağlantı (multilink) protokolünün kullanılmasını etkinleştirir. Karşı taraf da çoklu bağlantıyı destekliyorsa, bu bağlantı yerel sistem ile karşı taraf arasındaki bir demetin (bundle) parçası haline gelebilir. Karşı tarafa giden mevcut bir demet varsa, pppd bu bağlantıyı o demete dahil edecek, aksi takdirde pppd yeni bir demet oluşturacaktır. Aşağıdaki ÇOKLU BAĞLANTI bölümüne bakın. Bu seçenek şu anda yalnızca Linux altında mevcuttur.
name ad Kimlik doğrulama amacıyla yerel sistemin adını ad olarak ayarlar. Bu ayrıcalıklı bir seçenektir. Bu seçenekle pppd, karşı tarafın kimliğini doğrulamada kullanılacak bir sırrı ararken sırlar dosyalarında ikinci alanı ad olan satırları kullanacaktır. Ek olarak, user seçeneği ile geçersiz kılınmadığı sürece ad, yerel sistemi karşı tarafa doğrulamak için karşı tarafa gönderilecek ad olarak kullanılacaktır. (pppd'nin ad değerine alan adını eklemediğini unutmayın.)
noaccomp Her iki yönde de (gönderme ve alma) Adres/Kontrol sıkıştırmasını (Address/Control compression) devre dışı bırakır.
noauth Karşı tarafın kendi kimliğini doğrulamasını gerektirmez. Bu seçenek ayrıcalıklıdır.
nobsdcomp BSD-Compress sıkıştırmasını devre dışı bırakır; pppd, BSD-Compress şemasını kullanarak paketleri sıkıştırmayı talep etmeyecek veya bunu kabul etmeyecektir.
noccp CCP (Sıkıştırma Kontrol Protokolü - Compression Control Protocol) müzakeresini devre dışı bırakır. Bu seçenek yalnızca karşı taraf hatalıysa ve pppd'nin CCP müzakeresi talepleri nedeniyle kafası karışıyorsa gerekli olmalıdır.
nocrtscts Seri portta donanım akış kontrolünü (yani RTS/CTS) devre dışı bırakır. crtscts, nocrtscts, cdtrcts veya nocdtrcts seçeneklerinden hiçbiri verilmezse, seri port için donanım akış kontrolü ayarı değiştirilmeden bırakılır.
nocdtrcts Bu seçenek nocrtscts seçeneğinin eş anlamlısıdır. Bu seçeneklerden herhangi biri her iki donanım akış kontrolü biçimini de devre dışı bırakacaktır.
nodefaultroute defaultroute seçeneğini devre dışı bırakır. Kullanıcıların pppd ile varsayılan rotalar oluşturmasını engellemek isteyen sistem yöneticisi, bu seçeneği /etc/ppp/options dosyasına yerleştirerek bunu yapabilir.
nodeflate Deflate sıkıştırmasını devre dışı bırakır; pppd, Deflate şemasını kullanarak paketleri sıkıştırmayı talep etmeyecek veya bunu kabul etmeyecektir.
nodetach Denetleyici terminalden ayrılmaz. Bu seçenek olmadan, standart girdideki terminal dışında bir seri aygıt belirtilirse, pppd arka plan süreci olmak üzere çatallanacaktır (fork).
noendpoint pppd'nin karşı tarafa bir uç nokta tanımlayıcısı göndermesini veya karşı taraftan bir uç nokta tanımlayıcısı kabul etmesini devre dışı bırakır (aşağıdaki ÇOKLU BAĞLANTI bölümüne bakın). Bu seçenek yalnızca karşı taraf hatalıysa gerekli olmalıdır.
noip IPCP müzakeresini ve IP iletişimini devre dışı bırakır. Bu seçenek yalnızca karşı taraf hatalıysa ve pppd'nin IPCP müzakeresi talepleri nedeniyle kafası karışıyorsa gerekli olmalıdır.
noipv6 IPv6CP müzakeresini ve IPv6 iletişimini devre dışı bırakır. Bu seçenek yalnızca karşı taraf hatalıysa ve pppd'nin IPv6CP müzakeresi talepleri nedeniyle kafası karışıyorsa gerekli olmalıdır.
noipdefault Yerel IP adresi belirtilmediğinde, yerel IP adresini ana bilgisayar adından (mümkünse) belirleme şeklindeki varsayılan davranışı devre dışı bırakır. Bu seçenekle karşı taraf, IPCP müzakeresi sırasında yerel IP adresini sağlamak zorunda kalacaktır (komut satırında veya bir seçenekler dosyasında açıkça belirtilmediği sürece).
noipx IPXCP ve IPX protokollerini devre dışı bırakır. Bu seçenek yalnızca karşı taraf hatalıysa ve pppd'nin IPXCP müzakeresi talepleri nedeniyle kafası karışıyorsa gerekli olmalıdır.
noktune ktune seçeneğinin tersidir; pppd'nin sistem ayarlarını değiştirmesini engeller.
nolog Günlük mesajlarını bir dosyaya veya dosya tanımlayıcısına göndermez. Bu seçenek logfd ve logfile seçeneklerini iptal eder.
nomagic Sihirli sayı (magic number) müzakeresini devre dışı bırakır. Bu seçenekle pppd bir geri döngü (looped-back) hattını algılayamaz. Bu seçenek yalnızca karşı taraf hatalıysa gerekli olmalıdır.
nomp PPP çoklu bağlantı (multilink) kullanımını devre dışı bırakır. Bu seçenek şu anda yalnızca Linux altında mevcuttur.
nomppe MPPE (Microsoft Noktadan Noktaya Şifreleme - Microsoft Point to Point Encryption) şifrelemesini devre dışı bırakır. Bu varsayılan davranıştır.
nomppe-40 MPPE ile 40 bitlik şifrelemeyi devre dışı bırakır.
nomppe-128 MPPE ile 128 bitlik şifrelemeyi devre dışı bırakır.
nomppe-stateful MPPE durum bilgili (stateful) modunu devre dışı bırakır. Bu varsayılan davranıştır.
nompshortseq PPP çoklu bağlantı protokolünde kısa (12 bitlik) sıra numaralarının kullanılmasını devre dışı bırakarak 24 bitlik sıra numaralarının kullanılmasını zorunlu kılar. Bu seçenek şu anda yalnızca Linux altında mevcuttur ve yalnızca çoklu bağlantı etkinleştirilmişse etkilidir.
nomultilink PPP çoklu bağlantı (multilink) kullanımını devre dışı bırakır. Bu seçenek şu anda yalnızca Linux altında mevcuttur.
nopcomp Hem alım hem de iletim yönünde protokol alanı sıkıştırması (protocol field compression) müzakeresini devre dışı bırakır.
nopersist Bir bağlantı kurulup sonlandırıldıktan sonra çıkış yapar. persist veya demand seçeneği belirtilmediği sürece bu varsayılan davranıştır.
nopredictor1 Predictor-1 sıkıştırmasını kabul etmez veya bunu uygulamayı kabul etmez.
noproxyarp proxyarp seçeneğini devre dışı bırakır. Kullanıcıların pppd ile proxy ARP girdileri oluşturmasını engellemek isteyen sistem yöneticisi, bu seçeneği /etc/ppp/options dosyasına yerleştirerek bunu yapabilir.
notty Normalde pppd bir terminal aygıtı gerektirir. Bu seçenekle pppd, kendisine bir sözde tty (pseudo-tty) ana/bağımlı (master/slave) çifti tahsis edecek ve bağımlı aygıtı terminal aygıtı olarak kullanacaktır. pppd, sözde tty ana aygıtı ile standart girdisi ve çıktısı arasında karakterleri aktarmak için bir 'karakter şöntü' (character shunt) görevi görecek bir alt süreç oluşturacaktır. Böylece pppd, terminal aygıtı olmasalar bile standart çıktısı üzerinden karakter iletecek ve standart girdisi üzerinden karakter alacaktır. Bu seçenek, gönderilen ve alınan tüm karakterlerin karakter şöntü sürecinden akması gerektiğinden, ppp arayüzü üzerinden veri aktarımının gecikmesini ve CPU yükünü artırır. Bu seçenek kullanılıyorsa açık bir aygıt adı belirtilemez.
novj Hem iletim hem de alım yönünde Van Jacobson tarzı TCP/IP üstbilgi sıkıştırmasını (header compression) devre dışı bırakır.
novjccomp Van Jacobson tarzı TCP/IP üstbilgi sıkıştırmasındaki bağlantı kimliği (connection-ID) sıkıştırma seçeneğini devre dışı bırakır. Bu seçenekle pppd, Van Jacobson tarafından sıkıştırılmış TCP/IP üstbilgilerinden bağlantı kimliği baytını çıkarmayacak ve karşı taraftan da bunu yapmasını istemeyecektir.
papcrypt /etc/ppp/pap-secrets dosyasındaki karşı tarafın kimliğini doğrulamak için kullanılan tüm sırların şifreli olduğunu ve bu nedenle pppd'nin, şifrelenmeden önce /etc/ppp/pap-secrets dosyasındaki sırla aynı olan bir parolayı kabul etmemesi gerektiğini belirtir.
pap-max-authreq n Maksimum PAP authenticate-request iletim sayısını n olarak ayarlar (varsayılan 10).
pap-restart n PAP yeniden başlatma aralığını (yeniden iletim zaman aşımı) n saniye olarak ayarlar (varsayılan 3).
pap-timeout n pppd'nin karşı tarafın kendisini PAP ile doğrulaması için bekleyeceği maksimum süreyi n saniye olarak ayarlar (0 sınır olmadığı anlamına gelir).
pass-filter filtre-ifadesi Hangi paketlerin geçmesine izin verileceğini belirlemek için gönderilen veya alınan veri paketlerine uygulanacak bir paket filtresi belirtir. Filtre tarafından reddedilen paketler sessizce atılır. Bu seçenek, belirli ağ arka plan programlarının (örneğin routed) bağlantı bant genişliğini tüketmesini önlemek veya çok temel bir güvenlik duvarı yeteneği sağlamak için kullanılabilir. filtre-ifadesi sözdizimi, ether ve arp gibi bir PPP bağlantısı için uygun olmayan niteleyicilere izin verilmemesi dışında tcpdump(1) için açıklandığı gibidir. Genellikle, ifadedeki boşlukların kabuk tarafından yorumlanmasını önlemek için filtre ifadesi tek tırnak içine alınmalıdır. inbound ve outbound niteleyicilerini kullanarak gelen ve giden paketlere farklı kısıtlamalar uygulamanın mümkün olduğunu unutmayın. Bu seçenek şu anda yalnızca Linux altında mevcuttur ve çekirdeğin PPP filtreleme desteği (CONFIG_PPP_FILTER) içerecek şekilde yapılandırılmış olmasını gerektirir.
password parola-dizesi Karşı tarafa kimlik doğrulaması yapmak için kullanılacak parolayı belirtir. Parola büyük olasılıkla sistemdeki diğer kullanıcılar tarafından görülebileceğinden (örneğin ps(1) kullanılarak), bu seçeneğin kullanılması önerilmez.
persist Bir bağlantı sonlandırıldıktan sonra çıkış yapmaz; bunun yerine bağlantıyı yeniden açmaya çalışır. maxfail seçeneği kalıcı bağlantılarda hala etkilidir.
plugin dosya_adı Bu seçenek macOS 10.14'ten itibaren kullanımdan kaldırılmıştır. VPN eklentileri için NEPacketTunnelProvider API'si kullanılmalıdır.
predictor1 Predictor-1 sıkıştırmasını kullanarak karşı tarafın gönderdiği çerçeveleri sıkıştırmasını talep eder ve talep edilirse iletilen çerçeveleri Predictor-1 ile sıkıştırmayı kabul eder. Çekirdek sürücüsü Predictor-1 sıkıştırmasını desteklemediği sürece bu seçeneğin bir etkisi yoktur.
privgroup grup-adı grup-adı grubunun üyelerinin ayrıcalıklı seçenekleri kullanmasına izin verir. Bu ayrıcalıklı bir seçenektir. grup-adı üyelerinin kendilerini root yapmak için pppd'yi kullanamayacaklarının garantisi olmadığından, bu seçeneğin kullanımı dikkat gerektirir. Bunu, grup-adı üyelerini kmem veya disk grubuna dahil etmeye eşdeğer kabul edin.
proxyarp Bu sistemin ARP [Address Resolution Protocol - Adres Çözümleme Protokolü] tablosuna karşı tarafın IP adresi ve bu sistemin Ethernet adresi ile bir girdi ekler. Bu, karşı tarafın diğer sistemlere yerel ethernet üzerindeymiş gibi görünmesini sağlama etkisine sahip olacaktır.
pty betik İletişim kurmak için belirli bir terminal aygıtı yerine betik komutunun kullanılacağını belirtir. pppd, kendisine bir sözde tty (pseudo-tty) ana/bağımlı çifti tahsis edecek ve bağımlı aygıtı terminal aygıtı olarak kullanacaktır. Betik, standart girdisi ve çıktısı olarak sözde tty ana aygıtı atanmış bir alt süreçte çalıştırılacaktır. Bu seçenek kullanılıyorsa açık bir aygıt adı belirtilemez. (Not: pty seçeneği ile birlikte record seçeneği de kullanılırsa, alt sürecin standart girdisinde ve çıktısında borular [pipes] olacaktır.)
receive-all Bu seçenekle pppd, alım asyncmap haritasında işaretlenmiş olanlar da dahil olmak üzere karşı taraftan gelen tüm kontrol karakterlerini kabul edecektir. Bu seçenek olmadan pppd, RFC1662'de belirtildiği gibi bu karakterleri atacaktır. Bu seçenek yalnızca karşı taraf hatalıysa gerekli olmalıdır.
record dosya_adı pppd'nin gönderilen ve alınan tüm karakterleri dosya_adı adlı bir dosyaya kaydetmesi gerektiğini belirtir. Bu dosya, kullanıcının kullanıcı kimliği ve izinleri kullanılarak, ekleme (append) modunda açılır. Bu seçenek bir sözde tty ve sözde tty ile gerçek seri aygıt arasında karakterleri aktarmak için bir süreç kullanılarak uygulandığından, ppp arayüzü üzerinden veri aktarımının gecikmesini ve CPU yükünü artıracaktır. Karakterler, pppdump(8) programı kullanılarak okunabilir biçimde görüntülenebilen zaman damgalı, etiketli bir biçimde saklanır.
remotename ad Kimlik doğrulama amacıyla uzak sistemin varsayılan adını ad olarak ayarlar.
remotenumber numara Kimlik doğrulama amacıyla uzak sistemin varsayılan telefon numarasını numara olarak ayarlar.
refuse-chap Bu seçenekle pppd, karşı tarafa kendisini CHAP kullanarak doğrulamayı kabul etmeyecektir.
refuse-mschap Bu seçenekle pppd, karşı tarafa kendisini MS-CHAP kullanarak doğrulamayı kabul etmeyecektir.
refuse-mschap-v2 Bu seçenekle pppd, karşı tarafa kendisini MS-CHAPv2 kullanarak doğrulamayı kabul etmeyecektir.
refuse-eap Bu seçenekle pppd, karşı tarafa kendisini EAP kullanarak doğrulamayı kabul etmeyecektir.
refuse-pap Bu seçenekle pppd, karşı tarafa kendisini PAP kullanarak doğrulamayı kabul etmeyecektir.
require-chap Karşı tarafın kendisini CHAP [Challenge Handshake Authentication Protocol] kimlik doğrulaması kullanarak doğrulamasını gerektirir.
require-mppe MPPE (Microsoft Noktadan Noktaya Şifreleme) kullanılmasını gerektirir. Bu seçenek diğer tüm sıkıştırma türlerini devre dışı bırakır. Bu seçenek hem 40 bitlik hem de 128 bitlik şifrelemeyi etkinleştirir. MPPE'nin başarıyla kurulabilmesi için MS-CHAP veya MS-CHAPv2 ile kimlik doğrulaması yapmış olmanız gerekir. Bu seçenek şu anda yalnızca Linux altında ve yalnızca çekirdeğiniz MPPE desteği içerecek şekilde yapılandırılmışsa desteklenmektedir.
require-mppe-40 40 bit şifreleme ile MPPE kullanılmasını gerektirir.
require-mppe-128 128 bit şifreleme ile MPPE kullanılmasını gerektirir.
require-mschap Karşı tarafın kendisini MS-CHAP [Microsoft Challenge Handshake Authentication Protocol] kimlik doğrulaması kullanarak doğrulamasını gerektirir.
require-mschap-v2 Karşı tarafın kendisini MS-CHAPv2 [Microsoft Challenge Handshake Authentication Protocol, Sürüm 2] kimlik doğrulaması kullanarak doğrulamasını gerektirir.
require-eap Karşı tarafın kendisini EAP [Extensible Authentication Protocol] kimlik doğrulaması kullanarak doğrulamasını gerektirir.
require-pap Karşı tarafın kendisini PAP [Password Authentication Protocol] kimlik doğrulaması kullanarak doğrulamasını gerektirir.
show-password PAP paketlerinin içeriğini günlüklerken, bu seçenek pppd'nin günlük mesajında parola dizesini göstermesine neden olur.
silent
Bu seçenekle pppd, karşı taraftan geçerli bir LCP paketi alınana kadar bir bağlantı başlatmak için LCP paketleri iletmeyecektir (pppd'nin çok eski sürümlerindeki passive seçeneğinde olduğu gibi).
sync Asenkron yerine senkron HDLC seri kodlamasını kullanır. pppd tarafından bu seçenekle kullanılan aygıt senkronizasyon desteğine sahip olmalıdır. Şu anda Linux ve FreeBSD 2.2.8 ve sonraki sürümler altında Microgate SyncLink adaptörlerini desteklemektedir.
unit numara Giden bağlantılar için ppp birim numarasını (bir ppp0 veya ppp1 vb. arayüz adı için) ayarlar.
updetach Bu seçenekle pppd, ppp bağlantısını başarıyla kurduktan sonra (ilk ağ kontrol protokolünün, genellikle IP kontrol protokolünün kurulduğu noktaya kadar) denetleyici terminalinden ayrılacaktır.
usehostname Kimlik doğrulama amacıyla yerel sistemin adı olarak ana bilgisayar adının (verilmişse alan adı eklenmiş olarak) kullanılmasını zorunlu kılar (name seçeneğini geçersiz kılar). name seçeneği ayrıcalıklı olduğundan bu seçenek normalde gerekli değildir.
usepeerdns Karşı taraftan en fazla 2 DNS sunucu adresi ister. Karşı tarafça sağlanan adresler (varsa), DNS1 ve DNS2 çevre değişkenlerinde /etc/ppp/ip-up betiğine iletilir ve USEPEERDNS çevre değişkeni 1 olarak ayarlanır. Ek olarak pppd, karşı tarafça sağlanan adresleri içeren bir veya iki ad sunucusu (nameserver) satırı barındıran bir /etc/ppp/resolv.conf dosyası oluşturacaktır.
user ad Yerel sistemi karşı tarafa doğrulamak için kullanılan adı ad olarak ayarlar.
vj-max-slots n Van Jacobson TCP/IP üstbilgi sıkıştırma ve açma kodu tarafından kullanılacak bağlantı yuvası (connection slot) sayısını 2 ile 16 (dahil) arasında olması gereken n olarak ayarlar.
welcome betik connect betiği (varsa) tamamlandıktan sonra, PPP müzakeresini başlatmadan önce betik tarafından belirtilen yürütülebilir dosyayı veya kabuk komutunu çalıştırır. Ayrıcalıklı bir kaynaktan gelen bu seçeneğin değeri, ayrıcalıklı olmayan bir kullanıcı tarafından geçersiz kılınamaz.
xonxoff Seri porttaki veri akışını kontrol etmek için yazılım akış kontrolünü (yani XON/XOFF) kullanır.
Seçenekler Dosyaları
Seçenekler komut satırının yanı sıra dosyalardan da alınabilir. pppd, komut satırındaki seçenekleri işlemeden önce sırasıyla /etc/ppp/options, ~/.ppprc ve /etc/ppp/options.ttyname dosyalarından seçenekleri okur. (Aslında, options.ttyname dosyası okunmadan önce terminal adını bulmak için komut satırı seçenekleri taranır.) options.ttyname dosyasının adını oluştururken, terminal adından baştaki /dev/ kısmı kaldırılır ve kalan tüm / karakterleri noktalarla değiştirilir.
Bir seçenekler dosyası, boşluklarla sınırlandırılmış bir dizi kelimeye ayrıştırılır. Çift tırnak (") içine alınarak bir kelimeye boşluk dahil edilebilir. Ters eğik çizgi () takip eden karakteri kaçış karakteriyle korur. Diyez (#) işareti, satır sonuna kadar devam eden bir yorum başlatır. Bir seçenekler dosyası içinde file veya call seçeneklerinin kullanılması konusunda hiçbir kısıtlama yoktur.
Güvenlik
pppd, sistem yöneticilerine, sunucu veya üzerinde bulunduğu ağın güvenliğinden ödün verme korkusu olmadan, meşru kullanıcılara sunucu makinesine PPP erişimi sağlanabilmesi için yeterli erişim kontrolü sağlar. Bu kontrol, karşı tarafın doğrulanmış kimliğine bağlı olarak (varsa) hangi IP adreslerini kullanabileceğine dair kısıtlamalar ve ayrıcalıklı olmayan bir kullanıcının hangi seçenekleri kullanabileceğine dair kısıtlamalar aracılığıyla sağlanır. pppd'nin bazı seçenekleri ayrıcalıklıdır, özellikle potansiyel olarak güvensiz yapılandırmalara izin verenler; bu seçenekler yalnızca sistem yöneticisinin kontrolü altındaki dosyalarda veya pppd root tarafından çalıştırılıyorsa kabul edilir.
pppd'nin varsayılan davranışı, kimliği doğrulanmamış bir karşı tarafın belirli bir IP adresini kullanmasına yalnızca sistemin bu IP adresine halihazırda bir rotası yoksa izin vermektir. Örneğin, daha geniş internete kalıcı bağlantısı olan bir sistem normalde varsayılan bir rotaya sahip olacaktır ve bu nedenle tüm karşı tarafların bir bağlantı kurmak için kendilerini doğrulamaları gerekecektir. Böyle bir sistemde, auth seçeneği varsayılandır. Öte yandan, PPP bağlantısının internete tek bağlantı olduğu bir sistem normalde varsayılan bir rotaya sahip olmayacaktır, bu nedenle karşı taraf kendisini doğrulamadan neredeyse her IP adresini kullanabilecektir.
Yukarıda belirtildiği gibi, güvenliğe duyarlı bazı seçenekler ayrıcalıklıdır, bu da setuid-root bir pppd çalıştıran sıradan, ayrıcalıklı olmayan bir kullanıcı tarafından komut satırında, kullanıcının ~/.ppprc dosyasında veya file seçeneği kullanılarak okunan bir seçenekler dosyasında kullanılamayacakları anlamına gelir. Ayrıcalıklı seçenekler /etc/ppp/options dosyasında veya call seçeneği kullanılarak okunan bir seçenekler dosyasında kullanılabilir. pppd root kullanıcısı tarafından çalıştırılıyorsa, ayrıcalıklı seçenekler kısıtlama olmaksızın kullanılabilir.
Aygıtı açarken pppd, aygıt adının kullanıcı tarafından mı yoksa sistem yöneticisi tarafından mı belirtildiğine bağlı olarak, çağıran kullanıcının kullanıcı kimliğini (user ID) veya root UID'sini (yani 0) kullanır. Aygıt adı ayrıcalıklı bir kaynaktan, yani /etc/ppp/options veya call seçeneği kullanılarak okunan bir seçenekler dosyasından geliyorsa, pppd aygıtı açarken tam root ayrıcalıklarını kullanır. Böylece, /etc/ppp/peers altında uygun bir dosya oluşturarak sistem yöneticisi, kullanıcıların normalde erişim iznine sahip olmadıkları bir aygıt aracılığıyla bir ppp bağlantısı kurmalarına izin verebilir. Aksi takdirde pppd, aygıtı açarken çağıran kullanıcının gerçek UID'sini kullanır.
Kimlik Doğrulama
Kimlik doğrulama, bir tarafın diğerine kimliğini kanıtladığı süreçtir. Bu, ilk tarafın adını diğerine göndermesini ve bu adın yalnızca gerçek yetkili kullanıcısından gelebilecek bir tür gizli bilgiyle (sır) birlikte gönderilmesini içerir. Böyle bir alışverişte, ilk tarafa "istemci", diğerine ise "sunucu" diyeceğiz. İstemcinin kendisini sunucuya tanıttığı bir adı vardır ve sunucunun da kendisini istemciye tanıttığı bir adı vardır. Genellikle gerçek istemci sunucu ile bir sırrı (veya parolayı) paylaşır ve bu sırrı bildiğini kanıtlayarak kendi kimliğini doğrular. Çoğu zaman, kimlik doğrulama için kullanılan isimler karşı tarafların internet ana bilgisayar adlarına (hostnames) karşılık gelir, ancak bu zorunlu değildir.
Şu anda pppd üç kimlik doğrulama protokolünü desteklemektedir: Parola Kimlik Doğrulama Protokolü (PAP), Meydan Okuma El Sıkışma Kimlik Doğrulama Protokolü (CHAP) ve Genişletilebilir Kimlik Doğrulama Protokolü (EAP). PAP, istemcinin kendi kimliğini doğrulamak için adını ve düz metin (cleartext) parolasını sunucuya göndermesini içerir. Buna karşılık sunucu, istemciye bir meydan okuma (challenge) göndererek CHAP kimlik doğrulama alışverişini başlatır (meydan okuma paketi sunucunun adını içerir). İstemci, sırrı bildiğini kanıtlamak amacıyla, adını ve paylaşılan sır ile meydan okumadan türetilen bir karma (hash) değerini içeren bir yanıtla yanıt vermelidir.
PPP protokolü simetrik olduğundan, her iki tarafın da diğerinin kendisini doğrulamasını talep etmesine izin verir. Bu durumda, iki ayrı ve bağımsız kimlik doğrulama alışverişi gerçekleşecektir. İki alışveriş farklı kimlik doğrulama protokolleri kullanabilir ve prensipte iki alışverişte farklı isimler kullanılabilir.
pppd'nin varsayılan davranışı, talep edilirse kimlik doğrulamayı kabul etmek ve karşı taraftan kimlik doğrulaması talep etmemektir. Ancak pppd, bunu yapmak için kullanılabilecek hiçbir sırrı yoksa belirli bir protokolle kendisini doğrulamayı kabul etmeyecektir.
pppd, kimlik doğrulamasında kullanılacak sırları sırlar dosyalarında saklar (PAP için /etc/ppp/pap-secrets, CHAP/MS-CHAP/MS-CHAPv2 için /etc/ppp/chap-secrets). Her iki sırlar dosyası da aynı biçime sahiptir. Sırlar dosyaları, pppd'nin kendisini diğer sistemlere doğrulamak için kullanacağı sırların yanı sıra, pppd'nin diğer sistemleri kendisine doğrulamak için kullanacağı sırları da içerebilir.
Sırlar dosyasındaki her satır bir sır içerir. Belirli bir sır, belirli bir istemci ve sunucu kombinasyonuna özeldir - yalnızca o istemci tarafından kendisini o sunucuya doğrulamak için kullanılabilir. Dolayısıyla sırlar dosyasındaki her satırın en az 3 alanı vardır: istemcinin adı, sunucunun adı ve sır. Bu alanları, belirtilen istemcinin belirtilen sunucuya bağlanırken kullanabileceği IP adreslerinin bir listesi takip edebilir.
Bir sırlar dosyası, bir seçenekler dosyası için olduğu gibi kelimelere ayrıştırılır, bu nedenle istemci adı, sunucu adı ve sırlar alanlarının her biri, gömülü boşluklar veya diğer özel karakterler tırnak içine alınmış veya kaçış karakteriyle korunmuş olarak tek bir kelime olmalıdır. İstemci ve sunucu adlarında ve sırda büyük/küçük harf duyarlılığı olduğunu unutmayın.
Sır @ ile başlıyorsa, sonrasının sırrın okunacağı bir dosyanın adı olduğu varsayılır. İstemci veya sunucu adı olarak bir "*" her adla eşleşir. Bir sır seçerken pppd en iyi eşleşmeyi, yani en az joker karakter içeren eşleşmeyi alır.
Aynı satırdaki takip eden kelimeler, o istemci için kabul edilebilir IP adreslerinin bir listesi olarak kabul edilir. Satırda yalnızca 3 kelime varsa veya ilk kelime "-" ise, tüm IP adreslerine izin verilmez. Herhangi bir adrese izin vermek için "*" kullanın. "!" ile başlayan bir kelime, belirtilen adresin kabul edilemez olduğunu gösterir. Bir adresi takip eden bir "/" ve bir n sayısı, tüm bir alt ağı, yani en önemli n bitinde aynı değere sahip tüm adresleri belirtmek için kullanılabilir. Bu biçimde adres, kullanımda olan ppp ağ arayüzü birim numarasına bağlı olarak alt ağdan bir adresin yetkilendirildiğini belirtmek için bir artı işareti ("+") ile takip edilebilir. Bu durumda, adresin ana bilgisayar kısmı birim numarası artı bir olarak ayarlanacaktır.
Böylece bir sırlar dosyası, hem diğer ana bilgisayarların kimliğini doğrulamak için kullanılan sırları hem de kendimizi diğerlerine doğrulamak için kullandığımız sırları içerir. pppd karşı tarafın kimliğini doğrularken (karşı tarafın kimliğini kontrol ederken), ilk alanda karşı tarafın adının ve ikinci alanda yerel sistemin adının bulunduğu bir sır seçer. Yerel sistemin adı varsayılan olarak ana bilgisayar adıdır ve domain seçeneği kullanılıyorsa alan adı sonuna eklenir. usehostname seçeneği kullanılmadığı sürece, bu varsayılan değer name seçeneği ile geçersiz kılınabilir.
pppd kendisini karşı tarafa doğrulamak için kullanacağı bir sır seçerken, önce kendisini karşı tarafa tanıtmak için hangi adı kullanacağını belirler. Bu ad, kullanıcı tarafından user seçeneği ile belirtilebilir. Bu seçenek kullanılmazsa, ad varsayılan olarak yerel sistemin adına ayarlanır ve önceki paragrafta açıklandığı gibi belirlenir. Ardından pppd, ilk alanda bu adın ve ikinci alanda karşı tarafın adının bulunduğu bir sır arar. CHAP veya EAP kimlik doğrulaması kullanılıyorsa pppd karşı tarafın adını bilecektir, çünkü karşı taraf bunu meydan okuma paketinde göndermiş olacaktır. Ancak PAP kullanılıyorsa pppd, karşı tarafın adını kullanıcı tarafından belirtilen seçeneklerden belirlemek zorunda kalacaktır. Kullanıcı, remotename seçeneği ile doğrudan karşı tarafın adını belirtebilir. Aksi takdirde, uzak IP adresi bir isimle belirtilmişse (sayısal form yerine), o isim karşı tarafın adı olarak kullanılacaktır. Bu da başarısız olursa, pppd karşı tarafın adı olarak boş dizeyi (null string) kullanacaktır.
Karşı tarafın PAP ile kimliği doğrulanırken, sağlanan parola önce sırlar dosyasındaki sırla karşılaştırılır. Parola sırla eşleşmezse parola, crypt() kullanılarak şifrelenir ve sırra karşı tekrar kontrol edilir. Böylece karşı tarafın kimliğini doğrulamak için sırlar, istenirse şifreli biçimde saklanabilir. papcrypt seçeneği verilirse, daha iyi güvenlik için ilk (şifresiz) karşılaştırma atlanır.
Dahası, login seçeneği belirtilmişse kullanıcı adı ve parola sistem parola veritabanına karşı da kontrol edilir. Böylece sistem yöneticisi, pap-secrets dosyasını yalnızca belirli kullanıcıların PPP erişimine izin verecek ve her kullanıcının kullanabileceği IP adresleri kümesini kısıtlayacak şekilde ayarlayabilir. Tipik olarak login seçeneği kullanılırken, /etc/ppp/pap-secrets dosyasındaki sır "", yani karşı tarafça sağlanan herhangi bir parolayla eşleşecek şekilde olacaktır. Bu durum, aynı sırrın iki yerde bulunması ihtiyacını ortadan kaldırır.
IPCP (veya başka bir Ağ Kontrol Protokolü) başlatılmadan önce kimlik doğrulama tatmin edici bir şekilde tamamlanmalıdır. Karşı tarafın kendi kimliğini doğrulaması gerekiyorsa ve bunu yapamazsa, pppd bağlantıyı sonlandıracaktır (LCP'yi kapatarak). IPCP uzak ana bilgisayar için kabul edilemez bir IP adresi müzakere ederse IPCP kapatılacaktır. IP paketleri yalnızca IPCP açık olduğunda gönderilebilir veya alınabilir.
Bazen yerel ana bilgisayar genel olarak kimlik doğrulaması gerektirse bile, kendilerini doğrulayamayan bazı ana bilgisayarların bağlanmasına ve kısıtlı bir IP adresleri kümesinden birini kullanmasına izin vermek istenir. Karşı taraf talep edildiğinde kendi kimliğini doğrulamayı reddederse pppd bunu, kullanıcı adı ve parola için boş dize kullanılarak PAP ile kimlik doğrulaması yapılmasına eşdeğer kabul eder. Böylece, pap-secrets dosyasına istemci ve parola için boş dize belirten bir satır ekleyerek, kendilerini doğrulamayı reddeden ana bilgisayarlara kısıtlı erişim sağlamak mümkündür.
Yönlendirme
IPCP müzakeresi başarıyla tamamlandığında pppd, ppp arayüzü için yerel ve uzak IP adreslerini çekirdeğe bildirecektir. Bu, bağlantının uzak ucuna giden ve karşı tarafların IP paketlerini değiş tokuş etmesini sağlayacak bir ana bilgisayar rotası (host route) oluşturmak için yeterlidir. Diğer makinelerle iletişim genellikle yönlendirme tablolarında ve/veya ARP (Adres Çözümleme Protokolü - Address Resolution Protocol) tablolarında daha fazla değişiklik yapılmasını gerektirir. Çoğu durumda defaultroute ve/veya proxyarp seçenekleri bunun için yeterlidir, ancak bazı durumlarda daha fazla müdahale gerekir. Bunun için /etc/ppp/ip-up betiği kullanılabilir.
Bazen, İnternet'e tek bağlantısı ppp arayüzü üzerinden olan bir makine durumunda olduğu gibi, uzak ana bilgisayar aracılığıyla varsayılan bir rota eklemek istenir. defaultroute seçeneği, IPCP kurulduğunda pppd'nin böyle bir varsayılan rota oluşturmasına neden olur ve bağlantı sonlandırıldığında bunu siler.
Bazı durumlarda proxy ARP kullanmak istenir, örneğin uzak ana bilgisayarla diğer ana bilgisayarların iletişim kurmasına izin vermek için bir LAN'a bağlı bir sunucu makinesinde. proxyarp seçeneği, pppd'nin uzak ana bilgisayarla aynı alt ağda bir ağ arayüzü aramasını sağlar (yayın [broadcast] ve ARP'yi destekleyen, açık olan ve bir noktadan noktaya veya geri döngü [loopback] arayüzü olmayan bir arayüz). Bulunursa, pppd uzak ana bilgisayarın IP adresi ve bulunan ağ arayüzünün donanım adresi ile kalıcı, yayınlanmış bir ARP girdisi oluşturur.
demand seçeneği kullanıldığında, arayüz IP adresleri IPCP kurulduğu noktada zaten ayarlanmıştır. pppd, arayüzü yapılandırmak için kullandığı adreslerin aynısını müzakere edemediyse (örneğin karşı taraf dinamik IP adresi ataması kullanan bir ISP olduğunda), pppd arayüz IP adreslerini müzakere edilen adreslerle değiştirmek zorundadır. Bu durum mevcut bağlantıları bozabilir ve dinamik IP adresi ataması yapan karşı taraflarla isteğe bağlı arama (demand dialing) kullanılması önerilmez.
Çoklu Bağlantı (Multilink)
Çoklu Bağlantı PPP (Multilink PPP), bir makine çifti arasındaki iki veya daha fazla PPP bağlantısını tek bir demet (bundle) halinde birleştirme yeteneği sağlar; bu demet, tekil bağlantıların birleşik bant genişliğine sahip tek bir sanal PPP bağlantısı olarak görünür. Şu anda çoklu bağlantı PPP yalnızca Linux altında desteklenmektedir.
pppd, kontrol ettiği bağlantının karşı tarafın uç nokta tanımlayıcısını (endpoint discriminator) ve karşı tarafın kimliği doğrulanmış kimliğini (kendisini doğruluyorsa) kullanarak başka bir bağlantıyla aynı karşı tarafa bağlı olduğunu algılar. Uç nokta tanımlayıcısı, her karşı taraf için umulur ki benzersiz olan bir veri bloğudur. Yerel olarak atanan bayt dizileri, IP adresleri, MAC adresleri, rastgele bayt dizileri veya E-164 telefon numaraları dahil olmak üzere çeşitli veri türleri kullanılabilir. pppd tarafından karşı tarafa gönderilen uç nokta tanımlayıcısı, endpoint seçeneği kullanılarak ayarlanabilir.
Bazı durumlarda karşı taraf hiçbir uç nokta tanımlayıcısı veya benzersiz olmayan bir değer göndermeyebilir. İsteğe bağlı bundle seçeneği, bir demette birleştirilecek bağlantıları eşleştirirken karşı tarafın uç nokta tanımlayıcısına ve kimliği doğrulanmış kimliğine eklenen ek bir dize ekler. bundle seçeneği, yerel sistem ile karşı taraf arasında birden fazla demet kurulmasına izin vermek için de kullanılabilir. pppd bağlantıları eşleştirmek için /var/run/pppd.tdb içindeki bir TDB veritabanını kullanır.
Çoklu bağlantının etkinleştirildiğini ve karşı tarafın çoklu bağlantı müzakeresine istekli olduğunu varsayarsak, karşı tarafa ilk bağlantıyı kurmak için pppd çağrıldığında, karşı tarafa bağlı başka bir bağlantı olmadığını algılayacak ve yeni bir demet, yani başka bir ppp ağ arayüz birimi oluşturacaktır. Karşı tarafa başka bir bağlantı kurmak için başka bir pppd çağrıldığında, mevcut demeti algılayacak ve bağlantısını buna dahil edecektir. Şu anda, ilk pppd sonlanırsa (örneğin, bir kapatma [hangup] veya alınan bir sinyal nedeniyle) demet yok edilir.
Örnekler
Aşağıdaki örnekler, /etc/ppp/options dosyasının auth seçeneğini içerdiğini varsayar (ppp
dağıtımındaki varsayılan /etc/ppp/options dosyasında olduğu gibi).
Muhtemelen pppd'nin en yaygın kullanımı bir ISP'yi aramaktır. Bu, aşağıdaki gibi bir
komutla yapılabilir:
pppd call isp
burada /etc/ppp/peers/isp dosyası, sistem yöneticisi tarafından şuna benzer bir şey
içerecek şekilde kurulmuştur:
ttyS0 19200 crtscts
connect '/usr/sbin/chat -v -f /etc/ppp/chat-isp'
noauth
Bu örnekte, ISP'nin modemini aramak ve gerekli tüm oturum açma adımlarını geçmek için
chat kullanıyoruz. /etc/ppp/chat-isp dosyası, chat tarafından kullanılan betiği içerir;
örneğin şuna benzer bir şey içerebilir:
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
ABORT "Username/Password Incorrect"
"" "at"
OK "at&d0&c1"
OK "atdt2468135"
"name:" "^Umyuserid"
"word:" "\qmypassword"
"ispts" "\q^Uppp"
"~-^Uppp-~"
Chat betiklerinin ayrıntıları için chat(8) kılavuz sayfasına bakın.
Pppd, kullanıcılara gelen aramalı (dial-in) bir ppp hizmeti sağlamak için de kullanılabilir.
Kullanıcıların zaten oturum açma hesapları varsa, ppp hizmetini kurmanın en basit yolu,
kullanıcıların hesaplarında oturum açmalarına izin vermek ve pppd'yi (setuid-root olarak
kurulmuş) aşağıdaki gibi bir komutla çalıştırmaktır:
pppd proxyarp
Bir kullanıcının PPP olanaklarını kullanmasına izin vermek için, o kullanıcının makinesi için
bir IP adresi atamanız ve kullanıcının makinesinin kendisini doğrulayabilmesi için
/etc/ppp/pap-secrets veya /etc/ppp/chap-secrets dosyalarında (kullanıcının makinesindeki PPP
uygulamasının hangi kimlik doğrulama yöntemini desteklediğine bağlı olarak) bir girdi
oluşturmanız gerekir. Örneğin, Joe'nun "joespc" adında bir makinesi varsa ve "server" adındaki
makineyi aramasına ve joespc.my.net IP adresini kullanmasına izin verilecekse, /etc/ppp/pap-secrets
veya /etc/ppp/chap-secrets dosyasına şunun gibi bir girdi eklersiniz:
joespc server "joe's secret" joespc.my.net
Alternatif olarak, oturum açma kabuğu pppd ve ana dizini /etc/ppp olan bir kullanıcı adı
(örneğin "ppp") oluşturabilirsiniz. pppd bu şekilde çalıştırıldığında kullanılacak seçenekler
/etc/ppp/.ppprc dosyasına yerleştirilebilir.
Seri bağlantınız bir tel perçasından daha karmaşıksa, bazı kontrol karakterlerinin kaçış
(escape) karakteriyle korunmasını sağlamanız gerekebilir. Özellikle, asyncmap a0000 kullanarak
XON (^Q) ve XOFF (^S) karakterlerini kaçış karakteriyle korumak genellikle yararlıdır. Yol
bir telnet içeriyorsa, muhtemelen ^] karakterini de kaçış karakteriyle korumalısınız (asyncmap
200a0000). Yol bir rlogin içeriyorsa, rlogin istemcisini çalıştıran uçta escape ff seçeneğini
kullanmanız gerekecektir, çünkü birçok rlogin uygulaması şeffaf değildir; akıştan [0xff, 0xff,
0x73, 0x73, ardından herhangi bir 8 bayt] dizisini kaldıracaklardır.
Teşhis (Diagnostics)
Mesajlar, LOG_RAS özelliği kullanılarak syslog arka plan programına gönderilir. (Bu, pppd'nin LOG_PPP makrosu istenen özellik olarak tanımlanarak yeniden derlenmesiyle geçersiz kılınabilir.) syslog arka plan programının mesajları nereye yazacağının ayrıntıları için syslog(8) belgelerine bakın. Çoğu sistemde syslog arka plan programı, syslog mesajlarının hedeflerini belirtmek için /etc/syslog.conf dosyasını kullanır. Bu dosyayı ihtiyacınıza göre düzenlemeniz gerekebilir.
debug seçeneği, gönderilen veya alınan tüm kontrol paketlerinin içeriğinin günlüklenmesini sağlar, yani tüm LCP, PAP, CHAP, EAP veya IPCP paketleri. Bu, PPP müzakeresi başarılı olmadığında veya kimlik doğrulaması başarısız olduğunda yararlı olabilir. Derleme zamanında hata ayıklama etkinleştirilmişse, debug seçeneği diğer hata ayıklama mesajlarının da günlüklenmesini sağlar.
Hata ayıklama, pppd sürecine bir SIGUSR1 sinyali gönderilerek de etkinleştirilebilir veya devre dışı bırakılabilir. Bu sinyal bir geçiş anahtarı (toggle) görevi görür.
Çıkış Durumu (Exit Status)
pppd'nin çıkış durumu, herhangi bir hatanın algılanıp algılanmadığını veya bağlantının sonlandırılma nedenini belirtmek üzere ayarlanır. Kullanılan değerler şunlardır:
0 pppd ayrıldı (detached) veya bağlantı başarıyla kuruldu ve karşı tarafın isteği üzerine sonlandırıldı.
1 Gerekli bir sistem çağrısının başarısız olması veya sanal belleğin tükenmesi gibi bir tür ani ölümcül hata meydana geldi.
2 Sağlanan seçeneklerin işlenmesinde, birbiriyle çelişen iki seçeneğin kullanılması gibi bir hata algılandı.
3 pppd, setuid-root olarak ayarlanmamış ve çağıran kullanıcı root değil.
4 Çekirdek (kernel) PPP'yi desteklemiyor, örneğin PPP çekirdek sürücüsü dahil edilmemiş veya yüklenemiyor.
5 pppd, kendisine bir SIGINT, SIGTERM veya SIGHUP sinyali gönderildiği için sonlandırıldı.
6 Seri port kilitlenemedi.
7 Seri port açılamadı.
8 Bağlantı (connect) betiği başarısız oldu (sıfır olmayan bir çıkış durumu döndürdü).
9 pty seçeneğine argüman olarak belirtilen komut çalıştırılamadı.
10 PPP müzakeresi başarısız oldu, yani en az bir ağ protokolünün (örneğin IP) çalıştığı noktaya ulaşılamadı.
11 Karşı sistem kendisini doğrulamada başarısız oldu (veya reddetti).
12 Bağlantı başarıyla kuruldu ve boşta (idle) olduğu için sonlandırıldı.
13 Bağlantı başarıyla kuruldu ve bağlantı süresi sınırına ulaşıldığı için sonlandırıldı.
14 Geri arama (callback) müzakere edildi ve kısa süre içinde gelen bir arama ulaşmalıdır.
15 Bağlantı, karşı taraf echo isteklerine yanıt vermediği için sonlandırıldı.
16 Bağlantı modemin kapatılmasıyla (hangup) sonlandırıldı.
17 PPP müzakeresi, seri geri döngü (loopback) algılandığı için başarısız oldu.
18 Başlatma (init) betiği başarısız oldu (sıfır olmayan bir çıkış durumu döndürdü).
19 Karşı tarafa kendimizi doğrulamada başarısız olduk.
Betikler
pppd, işleme sürecinin çeşitli aşamalarında, siteye özgü yardımcı işlemler gerçekleştirmek için kullanılabilecek betikleri çağırır. Bu betikler genellikle kabuk (shell) betikleridir, ancak bunun yerine yürütülebilir kod dosyaları da olabilir. pppd betiklerin bitmesini beklemez. Betikler root olarak yürütülür (gerçek ve etkin kullanıcı kimliği 0 olarak ayarlanır), böylece yönlendirme tablolarını güncellemek veya ayrıcalıklı arka plan programlarını çalıştırmak gibi işlemler yapabilirler. Bu betiklerin içeriklerinin sisteminizin güvenliğini tehlikeye atmadığından emin olun. pppd betikleri, standart girdi, çıktı ve hatası /dev/null adresine yönlendirilmiş olarak ve bağlantı hakkında bilgi veren bazı çevre değişkenleri hariç boş bir çevre ile çalıştırır. pppd'nin ayarladığı çevre değişkenleri şunlardır:
DEVICE Kullanılan seri tty aygıtının adı.
IFNAME Kullanılan ağ arayüzünün adı.
IPLOCAL Bağlantının yerel ucu için IP adresi. Bu yalnızca IPCP kurulduğunda ayarlanır.
IPREMOTE Bağlantının uzak ucu için IP adresi. Bu yalnızca IPCP kurulduğunda ayarlanır.
PEERNAME Karşı tarafın doğrulanmış adı. Bu yalnızca karşı taraf kendisini doğrularsa ayarlanır.
SPEED tty aygıtının baud hızı.
ORIG_UID pppd'yi çağıran kullanıcının gerçek kullanıcı kimliği (user-id).
PPPLOGNAME pppd'yi çağıran gerçek kullanıcı kimliğinin kullanıcı adı. Bu değişken her zaman ayarlanır.
ip-down ve auth-down betikleri için pppd, bağlantıyla ilgili istatistikleri veren aşağıdaki değişkenleri de ayarlar:
CONNECT_TIME PPP müzakeresinin başlamasından bağlantının sonlandırılmasına kadar geçen saniye sayısı.
BYTES_SENT Bağlantı sırasında (seri port düzeyinde) gönderilen bayt sayısı.
BYTES_RCVD Bağlantı sırasında (seri port düzeyinde) alınan bayt sayısı.
LINKNAME linkname seçeneğiyle ayarlanan bağlantının mantıksal adı.
DNS1 Karşı taraf DNS sunucu adresleri sağlıyorsa, bu değişken sağlanan ilk DNS sunucu adresine ayarlanır.
DNS2 Karşı taraf DNS sunucu adresleri sağlıyorsa, bu değişken sağlanan ikinci DNS sunucu adresine ayarlanır.
pppd, eğer varsa aşağıdaki betikleri çağırır. Mevcut olmamaları bir hata değildir.
/etc/ppp/auth-up Uzak sistem kendisini başarıyla doğruladıktan sonra yürütülen bir program veya betik. Şu parametrelerle yürütülür:
interface-name peer-name user-name tty-device speed
Karşı taraf kendisini doğrulamazsa (örneğin noauth seçeneği kullanıldığında) bu betiğin yürütülmediğini unutmayın.
/etc/ppp/auth-down Daha önce /etc/ppp/auth-up yürütülmüşse, bağlantı koptuğunda yürütülen bir program veya betik. /etc/ppp/auth-up ile aynı şekilde ve aynı parametrelerle yürütülür.
/etc/ppp/ip-up Bağlantı IP paketleri göndermek ve almak için kullanılabilir olduğunda (yani IPCP kurulduğunda) yürütülen bir program veya betik. Şu parametrelerle yürütülür:
interface-name tty-device speed local-IP-address remote-IP-address ipparam
/etc/ppp/ip-down Bağlantı artık IP paketleri göndermek ve almak için kullanılamadığında yürütülen bir program veya betik. Bu betik, /etc/ppp/ip-up betiğinin etkilerini geri almak için kullanılabilir. ip-up betiği ile aynı şekilde ve aynı parametrelerle çağrılır.
/etc/ppp/ipv6-up /etc/ppp/ip-up gibidir, ancak bağlantı IPv6 paketleri göndermek ve almak için kullanılabilir olduğunda yürütülür. Şu parametrelerle yürütülür:
interface-name tty-device speed local-link-local-address remote-link-local-address ipparam
/etc/ppp/ipv6-down /etc/ppp/ip-down betiğine benzer, ancak bağlantıda artık IPv6 paketleri iletilemediğinde yürütülür. ipv6-up betiği ile aynı parametrelerle yürütülür.
/etc/ppp/ipx-up Bağlantı IPX paketleri göndermek ve almak için kullanılabilir olduğunda (yani IPXCP kurulduğunda) yürütülen bir program veya betik. Şu parametrelerle yürütülür:
interface-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
local-IPX-routing-protocol ve remote-IPX-routing-protocol alanları aşağıdakilerden biri olabilir:
NONE yönlendirme protokolü olmadığını belirtmek için RIP RIP/SAP kullanılması gerektiğini belirtmek için NLSP Novell NLSP kullanılması gerektiğini belirtmek için RIP NLSP hem RIP/SAP hem de NLSP kullanılması gerektiğini belirtmek için
/etc/ppp/ipx-down Bağlantı artık IPX paketleri göndermek ve almak için kullanılamadığında yürütülen bir program veya betik. Bu betik, /etc/ppp/ipx-up betiğinin etkilerini geri almak için kullanılabilir. ipx-up betiği ile aynı şekilde ve aynı parametrelerle çağrılır.
Dosyalar
/var/run/pppn.pid (BSD veya Linux), /etc/ppp/pppn.pid (diğerleri) ppp arayüz birimi n üzerindeki pppd süreci için süreç kimliği (Process-ID).
/var/run/ppp-name.pid (BSD veya Linux), /etc/ppp/ppp-name.pid (diğerleri) Mantıksal bağlantı adı için pppd sürecinin süreç kimliği (bkz. linkname seçeneği).
/etc/ppp/pap-secrets PAP kimlik doğrulaması için kullanıcı adları, parolalar ve IP adresleri. Bu dosya root'a ait olmalı ve başka hiçbir kullanıcı tarafından okunabilir veya yazılabilir olmamalıdır. Durum böyle değilse pppd bir uyarı günlükleyecektir.
/etc/ppp/chap-secrets CHAP/MS-CHAP/MS-CHAPv2 kimlik doğrulaması için isimler, sırlar (secrets) ve IP adresleri. /etc/ppp/pap-secrets dosyasında olduğu gibi, bu dosya root'a ait olmalı ve başka hiçbir kullanıcı tarafından okunabilir veya yazılabilir olmamalıdır. Durum böyle değilse pppd bir uyarı günlükleyecektir.
/etc/ppp/options Kullanıcı varsayılan seçeneklerinden veya komut satırı seçeneklerinden önce okunan, pppd için sistem varsayılan seçenekleri.
~/.ppprc Kullanıcı varsayılan seçenekleri, /etc/ppp/options.ttyname dosyasından önce okunur.
/etc/ppp/options.ttyname Kullanılan seri port için sistem varsayılan seçenekleri, ~/.ppprc dosyasından sonra okunur. Bu dosya adının ttyname kısmını oluştururken, varsa port adından baştaki /dev/ kısmı çıkarılır ve kalan kısımdaki eğik çizgiler noktalara dönüştürülür.
/etc/ppp/peers pppd root dışındaki bir kullanıcı tarafından çağrılmış olsa bile, ayrıcalıklı seçenekler içerebilen seçenekler dosyalarını barındıran bir dizin. Sistem yöneticisi, ayrıcalıklı olmayan kullanıcıların karşı tarafın kimlik doğrulaması yapmasını gerektirmeden, yalnızca belirli güvenilir karşı tarafları aramalarına izin vermek için bu dizinde seçenekler dosyaları oluşturabilir.
Ayrıca Bakınız
RFC1144 Jacobson, V. Compressing TCP/IP headers for low-speed serial links. February 1990.
RFC1321 Rivest, R. The MD5 Message-Digest Algorithm. April 1992.
RFC1332 McGregor, G. PPP Internet Protocol Control Protocol (IPCP). May 1992.
RFC1334 Lloyd, B.; Simpson, W.A. PPP authentication protocols. October 1992.
RFC1661 Simpson, W.A. The Point-to-Point Protocol (PPP). July 1994.
RFC1662 Simpson, W.A. PPP in HDLC-like Framing. July 1994.
RFC2284 Blunk, L.; Vollbrecht, J., PPP Extensible Authentication Protocol (EAP). March 1998.
RFC2472 Haskin, D. IP Version 6 over PPP December 1998.
Notlar
Çalışan bir pppd süreci üzerinde, aşağıdaki listeden bir sinyal gönderilerek sınırlı ölçüde kontrol uygulanabilir.
SIGINT, SIGTERM Bu sinyaller pppd'nin bağlantıyı sonlandırmasına (LCP'yi kapatarak), seri aygıt ayarlarını geri yüklemesine ve çıkmasına neden olur.
SIGHUP Bu sinyal pppd'nin bağlantıyı sonlandırmasına, seri aygıt ayarlarını geri yüklemesine ve seri aygıtı kapatmasına neden olur. persist veya demand seçeneği belirtilmişse, pppd seri aygıtı yeniden açmaya ve (bekleme [holdoff] süresinden sonra) başka bir bağlantı başlatmaya çalışacaktır. Aksi takdirde pppd çıkacaktır. Bu sinyal bekleme süresi içinde alınırsa, pppd'nin bekleme süresini hemen sonlandırmasına neden olur.
SIGUSR1 Bu sinyal debug seçeneğinin durumunu değiştirir.
SIGUSR2 Bu sinyal pppd'nin sıkıştırmayı yeniden müzakere etmesine neden olur. Bu durum, ölümcül bir sıkıştırma açma hatası sonucu devre dışı bırakıldıktan sonra sıkıştırmayı yeniden etkinleştirmek için yararlı olabilir. (Ölümcül sıkıştırma açma hataları genellikle bir veya diğer uygulamadaki bir hataya işaret eder.)
Yazarlar
Drew Perkins, Brad Clements, Karl Fox, Greg Christy ve Brad Parker'ın önceki çalışmalarına dayanarak Paul Mackerras (Paul.Mackerras@samba.org).
PPPD(8)