world leader in high performance signal processing
Trace: » ppp

Point-to-Point Protocol

The Point-to-Point Protocol (PPP) is used for creating links over a variety of serial mediums (such as serial devices, modems, and sometimes encapsulated over Ethernet or ATM). The latter cases (PPPoE and PPPoA) are generally the protocol ADSL providers use with their customers. PPPoE tends to be more popular in North America while PPPoA tends to be more popular in Europe.

The PPP handling in Linux consists of two portions. The kernel driver for the PPP line disciplines and the user space applications for managing the connections.

Linux Kernel Options

Enable the following options:

Device Drivers --->
  Network device support --->
    <*> PPP (point-to-point protocol) support
      [ ]   PPP multilink support (EXPERIMENTAL)
      [ ]   PPP filtering
      <*>   PPP support for async serial ports
      < >   PPP support for sync tty ports
      < >   PPP Deflate compression
      < >   PPP BSD-Compress compression
      < >   PPP MPPE compression (encryption) (EXPERIMENTAL)
      < >   PPP over Ethernet (EXPERIMENTAL)

Do not use the PPP over Ethernet option as this has been moved completely to userspace with the latest version of the ppp package. If you want support for some compression algorithms though, you may want to enable those options. Keep in mind that both sides of the connection must support the compression algorithm in order for it to be used.

uClinux-dist Options

You have to at least enable the main pppd binary. The other parts are optional as you need them. Keep in mind that the dynamic plugins will only work with FDPIC ELF.

Network Applications --->
  [*] pppd
  [ ]   enable dynamic plugins
  [ ]   enable ipv6
  [ ]   enable PAM
  [ ]   enable MPPE
  [ ]   enable TACACS+
  [ ]   enable RADIUS
  [ ]   enable PPPOE
  [ ]   enable PPPOA
  [ ]   disable redirection of passwords starting with @  

Often times you may want to use chat to automate the connections.

Miscellaneous Applications --->
  [*] chat

Simple Serial Link

Here we'll show how to create a simple ppp link over a serial port. The default instructions here use the same serial line as the console shell, so once you execute pppd on the board in the console shell, you will need to close your terminal emulator. The other option is to just disable the root console shell and once the board has booted, you can telnet into it in order to execute commands.

/etc/ppp/options

Here is a sample configuration script. Obviously you will want to tweak to match your needs. See the pppd man page for more information/explanation.

Host

This is the configuration file to use on your development host. We assume it has a serial device at /dev/ttyS0.

lock
crtscts
10.0.0.2:10.0.0.209
linkname ppp0
local
nodefaultroute
/dev/ttyS0
115200
-detach

Board

This is the configuration file to use on the Blackfin board.

lock
crtscts
10.0.0.209:10.0.0.2
linkname ppp0
local
nodefaultroute
/dev/ttyBF0
115200
-detach

Launching pppd

Now that you have all the configuration options set, you just need to run pppd on both the host and the board. On your development host, if pppd is not setuid root, you will need to execute it as root.

root:/> pppd 
Using interface ppp0
Connect: ppp0 <--> /dev/ttyBF0
Deflate (15) compression enabled
local  IP address 10.0.0.209
remote IP address 10.0.0.2

On your board, if you have the serial console enabled, you will need to run pppd from there. Just remember to close your serial terminal after doing so. You will see a few garbage bytes after you launch, but that's normal, so don't worry about it.

You now have an established connection! The board will have the IP address 10.0.0.209 and your development system will now have 10.0.0.2. You should be able to ping and telnet and do other normal network related activities.

vapier@vapier-adi 0:0 ~ $ ping 10.0.0.209 -c 3
PING 10.0.0.209 (10.0.0.209) 56(84) bytes of data.
64 bytes from 10.0.0.209: icmp_seq=1 ttl=64 time=10.0 ms
64 bytes from 10.0.0.209: icmp_seq=2 ttl=64 time=8.00 ms
64 bytes from 10.0.0.209: icmp_seq=3 ttl=64 time=8.00 ms

--- 10.0.0.209 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 8.007/8.694/10.069/0.975 ms

vapier@vapier-adi 0:0 ~ $ telnet 10.0.0.209
Trying 10.0.0.209...
Connected to 10.0.0.209.
Escape character is '^]'.


BusyBox v1.9.1 (2008-03-11 19:21:36 EDT) built-in shell (msh)
Enter 'help' for a list of built-in commands.

root:/> uname -a
Linux blackfin 2.6.24.3-ADI-2008R2-pre-svn4427 #132 Tue Mar 11 20:06:55 EDT 2008 blackfin unknown
root:/> ping 10.0.0.2 -c 3
PING 10.0.0.2 (10.0.0.2): 56 data bytes
64 bytes from 10.0.0.2: seq=0 ttl=64 time=12.000 ms
64 bytes from 10.0.0.2: seq=1 ttl=64 time=12.000 ms
64 bytes from 10.0.0.2: seq=2 ttl=64 time=12.000 ms

--- 10.0.0.2 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 12.000/12.000/12.000 ms

Here the development host pinged the board via the serial ppp link, telneted across the link to the board, and then ping the host from the board across the link.

Using PPP with a serial modem

You can test the configuration by manually establishing a PPP connection. (Once we the manual connection working, the process can be automated). A good solution for this on the Blackfin is picocom.

Futher info on this can be found at the PPP Howto

PPPoE

A Blackfin board running Linux can be configured to be a PPPoE peer (either server or client).

You will need the rp-pppoe package.

Network Applications --->
  [*] rp-pppoe
  [ ]   rp-ppoe server

Here we use rp-pppoe instead of the “pppoe” in “pppd”.

PPPoE Client

  • Configure PPPoE

Edit the configure file: '/etc/ppp/pppoe.conf' to configure pppoe. For this test, we set

 ETH=eth0
 USER=test

Depending on the authenticate method the server is configured, you may also need to configure other files like /etc/ppp/chap-secrets, /etc/ppp/pap-secrets. Also you may need to set up DNS. But for our simple test, we do not use any authentication.

  • Configure the network

We are going to use eth0 interface of BF537 STAMP. Connect the board to the Linux host running PPPoE server. Bring up eth0 interface of the board, but do not assign it an IP address.

root:~> ifconfig eth0 down
root:~> ifconfig eth0 up
root:~> ifconfig
eth0      Link encap:Ethernet  HWaddr 66:61:10:3E:24:00
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
  • Configure the Linux Host to start PPPoE server (see bellow).
  • Start PPPoE:
root:~> adsl-start & 

This script will invoke “adsl-connect” script and start “pppoe”. However, since there is some issue with “adsl-connect” script, it need to be modified. Please use the rp-pppoe in CVS after 2006-09-27. Check whether the PPPoE connection is successfully setup.

root:~> ps -ef
 1280 root        660 S   /bin/sh /bin/adsl-connect
 1316 root        260 S   /bin/pppd pty /bin/pppoe -p /var/run/adsl.pid.pppoe -
 1318 root         68 S   /bin/pppoe -p /var/run/adsl.pid.pppoe -I eth0 -T 80 -


root:~> cat /var/log/messages
<5>Jan  3 03:29:56 pppd[1316]: pppd 2.3.8 started by (unknown), uid 0
<6>Jan  3 03:29:56 pppd[1316]: Using interface ppp0
<5>Jan  3 03:29:56 pppd[1316]: pppd create pidfile /var/run/ppp0.pid
<5>Jan  3 03:29:56 pppd[1316]: Connect: ppp0 <--> /dev/ttyp0
<7>Jan  3 03:29:56 pppoe[1318]: PADS: Service-Name: ''
<7>Jan  3 03:29:56 pppoe[1318]: PPP session is 16
<4>Jan  3 03:29:57 pppd[1316]: Will not do PAP for user test
<4>Jan  3 03:29:57 pppd[1316]: Will not do CHAP for user test
<5>Jan  3 03:29:57 pppd[1316]: local  IP address 192.168.0.16
<5>Jan  3 03:29:57 pppd[1316]: remote IP address 10.0.0.1



root:~> ifconfig
eth0      Link encap:Ethernet  HWaddr 66:61:10:3E:24:00
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:235 errors:0 dropped:0 overruns:0 frame:0
          TX packets:221 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0

ppp0      Link encap:Point-to-Point Protocol
          inet addr:192.168.0.16  P-t-P:10.0.0.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3

On the Host running PPPoE server, check ppp0:

host@linux:~> /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 00:11:43:A4:13:BC
          inet6 addr: fe80::211:43ff:fea4:13bc/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:770 errors:0 dropped:0 overruns:0 frame:0
          TX packets:822 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:59049 (57.6 Kb)  TX bytes:58981 (57.5 Kb)
          Interrupt:169

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:2713 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2713 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:224712 (219.4 Kb)  TX bytes:224712 (219.4 Kb)

ppp0      Link encap:Point-to-Point Protocol
          inet addr:10.0.0.1  P-t-P:192.168.0.16  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:52 (52.0 b)  TX bytes:46 (46.0 b)

PPPoE server

In this test the Linux Desktop is installed with OpenSuSE-10.1.

$ /user/sbin/pppoe --version
PPPoE Version 3.5, Copyright (C) 2001 Roaring Penguin Software Inc.
  • The pppd-2.4.3 is installed by default on the system. And the kernel by default supports PPP.
$ /user/sbin/pppd --version
pppd version 2.4.3
  • Configure PPPoE server. For testing purpose, we don't require any authentication
$ cat /etc/ppp/pppoe-server-options
# PPP options for the PPPoE server
# LIC: GPL
#require-pap
#login
lcp-echo-interval 10
lcp-echo-failure 2
  • Setup network - again we bring up the eth0 interface but do not assign any IP address
$ ifconfig eth0 
eth0      Link encap:Ethernet  HWaddr 00:11:43:A4:13:BC
          inet6 addr: fe80::211:43ff:fea4:13bc/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:865 errors:0 dropped:0 overruns:0 frame:0
          TX packets:914 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:65129 (63.6 Kb)  TX bytes:64869 (63.3 Kb)
          Interrupt:169
  • Start pppoe server:
/usr/sbin/pppoe-server -T 60 -I eth0 -N 250 -R 192.168.0.1

PPPOE w/MPPE/MPPC

Linux kernel 2.6.15 includes the PPP MPPE/MPPC (Microsoft Point-to-Point Encryption/Compression) module as a PPP compressor/decompressor. This makes linux possible to interoperate with Microsoft Point-to-Point Tunneling Protocol(PPTP) servers and clients which use MPPE to encrypt data when creating a VPN.

Bellow section describes steps to setup PPPOE connection encrypted with MPPE. The purpose is to verify kernel and pppd support of MPPE work as expected. Blackfin uClinux supports PPTP server(Poptop) and PPTP client. You can refer to the links in the “Reference” for how to setup you VPN server and VPN client using Blackfin uClinux.

Linux kernel with MPPE/PPPOE support

Device Drivers --->
  Network device support --->
   <M> PPP (point-to-point protocol) support
     <M> PPP support for async serial ports
     <M> PPP support for sync tty ports
     <M> PPP Deflate compression
     <M> PPP BSD-Compress compression
     <M> PPP MPPE compression (encryption) (EXPERIMENTAL)
     <M> PPP over Ethernet (EXPERIMENTAL)  
Cryptographic options  --->
  [*] Cryptographic API
  [*]   HMAC support
  <M>   MD5 digest algorithm
  <M>   SHA1 digest algorithm #this one is required
  <M>   SHA256 digest algorithm
  <M>   SHA384 and SHA512 digest algorithms
  <M>   DES and Triple DES EDE cipher algorithms ###this one is commonplace too (recommended)
  <M>   ARC4 cipher algorithm #this one is required

Please note this time we use PPPoE module in kernel. We no longer use PPPoE in user space.

Build pppd

By default ppp-2.4.3 will be built with PPPoE and MPPE support.

Configure pppd

Compared with the above section, this time we use the “rp-pppoe” plugin in “pppd” to set up PPPOE, instead of the seperate application “rp-pppoe”.

  • Configuration file for this “pppoe-mppe” link: /etc/ppp/peers/mylink:
    # /etc/ppp/peers/mylink
    
    plugin rp-pppoe.so eth0
    
    mtu 1492
    mru 1492
    
    require-mppe
    
    debug
  • Set password in /etc/ppp/chap-secrets:
    # Secrets for authentication using CHAP
    # client        server  secret                  IP addresses
    
    # allow any client, any server, any IP addr
    * * "" *

Configure PPPoE server on Linux PC

  • /etc/ppp/pppoe-server-options
# PPP options for the PPPoE server
# LIC: GPL

lcp-echo-interval 10
lcp-echo-failure 2
debug
auth
# MPPE requires mschap-v2
require-mschap-v2
require-mppe
refuse-pap
refuse-chap
refuse-mschap
  • /etc/ppp/chap-secrets:
    # Secrets for authentication using CHAP
    # client        server  secret                  IP addresses
    
    # allow any client, any server, any IP addr
    * * "" *
  • Start PPPOE server: (Need to install kernel MPPE module first).
host:> modprobe ppp-mppe
host:> /usr/sbin/pppoe-server -T 60 -I eth0 -N 250 -R 192.168.0.1

Setup connection

  • On the board, install “ppoe” “ppp-mppe” modules
root:~> modprobe ppp-mppe
PPP generic driver version 2.4.2
PPP MPPE Compression module registered

root:~> modprobe pppoe
NET: Registered protocol family 24

root:~> lsmod
Module                  Size  Used by
pppoe                   8544  0
pppox                   1672  1 pppoe
sha1                    1632  0
arc4                    1120  0
ecb                     1760  0
blkcipher               3172  1 ecb
cryptomgr               1824  0
crypto_algapi           6816  4 sha1,arc4,ecb,cryptomgr
ppp_mppe                4836  0
ppp_generic            15540  3 pppoe,pppox,ppp_mppe
slhc                    4096  1 ppp_generic
  • Connect
root:~> ifconfig eth0 up
root:~> ifconfig
eth0      Link encap:Ethernet  HWaddr 00:E0:22:FE:48:E7
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2451 errors:0 dropped:0 overruns:0 frame:0
          TX packets:760 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
 
root:~> pppd call mylink & 
root:~> Plugin rp-pppoe.so loaded.
  • If connect sucessfully:
root:~> ifconfig
eth0      Link encap:Ethernet  HWaddr 00:E0:22:FE:48:E7
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2431 errors:0 dropped:0 overruns:0 frame:0
          TX packets:740 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0

ppp0      Link encap:Point-to-Point Protocol
          inet addr:192.168.0.10  P-t-P:10.0.0.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:7 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
/var/log/messages

RP-PPPoE plugin version 3.3 compiled against pppd 2.4.3
Jan  1 04:49:09 blackfin daemon.info pppd[612]: Plugin rp-pppoe.so loaded.
Jan  1 04:49:09 blackfin daemon.info pppd[612]: RP-PPPoE plugin version 3.3 compiled against pppd 2.4.3
Jan  1 04:49:09 blackfin daemon.notice pppd[612]: pppd 2.4.3 started by root, uid 0
Jan  1 04:49:09 blackfin daemon.debug pppd[612]: PADS: Service-Name: ''
Jan  1 04:49:09 blackfin daemon.info pppd[612]: PPP session is 10
Jan  1 04:49:09 blackfin daemon.debug pppd[612]: using channel 2
Jan  1 04:49:09 blackfin daemon.info pppd[612]: Using interface ppp0
Jan  1 04:49:09 blackfin daemon.notice pppd[612]: Connect: ppp0 <--> eth0
Jan  1 04:49:09 blackfin daemon.warn pppd[612]: Couldn't increase MTU to 1500
Jan  1 04:49:09 blackfin daemon.warn pppd[612]: Couldn't increase MRU to 1500
Jan  1 04:49:09 blackfin daemon.warn pppd[612]: Warning - secret file /etc/ppp/pap-secrets has world and/or group access
Jan  1 04:49:09 blackfin daemon.debug pppd[612]: sent [LCP ConfReq id=0x1 <mru 1492> <magic 0x64e9b3d5>]
Jan  1 04:49:10 blackfin daemon.debug pppd[612]: rcvd [LCP ConfReq id=0x1 <auth chap MS-v2> <magic 0x7860031d>]
Jan  1 04:49:10 blackfin daemon.debug pppd[612]: sent [LCP ConfAck id=0x1 <auth chap MS-v2> <magic 0x7860031d>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [LCP ConfReq id=0x1 <mru 1492> <magic 0x64e9b3d5>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [LCP ConfReq id=0x1 <auth chap MS-v2> <magic 0x7860031d>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [LCP ConfAck id=0x1 <auth chap MS-v2> <magic 0x7860031d>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [LCP ConfAck id=0x1 <mru 1492> <magic 0x64e9b3d5>]
Jan  1 04:49:12 blackfin daemon.warn pppd[612]: Couldn't increase MTU to 1500
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [LCP EchoReq id=0x0 magic=0x7860031d]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [LCP EchoRep id=0x0 magic=0x64e9b3d5]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [CHAP Challenge id=0xd1 <0be9be94e46b28dded2b531a2a3e44d8>, name = "linux"]
Jan  1 04:49:12 blackfin daemon.warn pppd[612]: Warning - secret file /etc/ppp/chap-secrets has world and/or group access
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [CHAP Response id=0xd1 <b416517338b44cfc119e4060d673dd7a00000000000000005eb43466cd878]Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [CHAP Success id=0xd1 "S=7BA56A1F9C1000AA716FFDF1319EEA6EEA9D92CE M=Access granted"]
Jan  1 04:49:12 blackfin daemon.notice pppd[612]: peer from calling number 00:11:43:A4:13:BC authorized
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [CCP ConfReq id=0x1 <mppe +H +M +S +L -D -C>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [CCP ConfReq id=0x1 <mppe +H -M +S +L -D -C>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [CCP ConfNak id=0x1 <mppe +H -M +S -L -D -C>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [CCP ConfNak id=0x1 <mppe +H -M +S -L -D -C>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [CCP ConfReq id=0x2 <mppe +H -M +S -L -D -C>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [CCP ConfReq id=0x2 <mppe +H -M +S -L -D -C>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [CCP ConfAck id=0x2 <mppe +H -M +S -L -D -C>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [CCP ConfAck id=0x2 <mppe +H -M +S -L -D -C>]
Jan  1 04:49:12 blackfin daemon.notice pppd[612]: MPPE 128-bit stateless compression enabled
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [IPCP ConfReq id=0x1 <addr 0.0.0.0>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [IPCP ConfReq id=0x1 <addr 10.0.0.1>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [IPCP ConfAck id=0x1 <addr 10.0.0.1>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [IPCP ConfNak id=0x1 <addr 192.168.0.10>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: sent [IPCP ConfReq id=0x2 <addr 192.168.0.10>]
Jan  1 04:49:12 blackfin daemon.debug pppd[612]: rcvd [IPCP ConfAck id=0x2 <addr 192.168.0.10>]
Jan  1 04:49:12 blackfin daemon.notice pppd[612]: local  IP address 192.168.0.10
Jan  1 04:49:12 blackfin daemon.notice pppd[612]: remote IP address 10.0.0.1

Reference

Related Notions

  • MPPE: The Microsoft Point to Point Encryption scheme is a means of representing Point to Point Protocol (PPP) packets in an encrypted form. MPPE uses the RSA RC4 algorithm to provide data confidentiality. The length of the session key to be used for initializing encryption tables can be negotiated. MPPE currently supports 40-bit and 128-bit session keys. Linux kernel 2.6.15 has been released and includes the PPP MPPE encryption module. MPPE support in pppd has three versoins. Here are details.
  • PPTP: Point-to-Point Tunneling Protocol. It is used for implement VPN. rfc2637. Linux implementation: server, client. PPTP is known to be a faulty protocol. a protocol which allows the PPP to be tunneled through an IP network. PPTP does not specify any changes to the PPP protocol but rather describes a new vehicle for carrying PPP. The designers of the protocol, Microsoft, recommend not to use it due to the inherent risks. Lots of people use PPTP anyway due to ease of use, but that doesn't mean it is any less hazardous. The maintainers of PPTP Client and Poptop recommend using OpenVPN (SSL based) or IPSec instead.
  • RADIUS: Remote Authentication Dial In User Service (RADIUS) is an AAA (authentication, authorization and accounting) protocol for applications such as network access. PPP includes radius plug-in, which immplemented RADIUS client support including PAP, CHAP and MSCHAPv2 authentication, MPPE key derivation by the RADIUS server, and RADIUS accounting. See here for how to use PPTP with the “freeradius” server.