How to make an oldschool analog modem PPP Dial-In with Linux and Windows XP
What we need:
- USB Modem (DELL) connected to my raspberry PI3
- Old Fritzbox 7130 with two POTS ports
- Old Laptop with Windpows XP and Winmodem (sucks on linux for driver issues)
- Two Telephone Cables
- Connecting Raspberry PI to FritzBox -> **2
- Connecting Laptop to FB -> **3
First connecting from XP to Linuxmachine:
- Open Network-Connections
- File -> New Network Connection:
- Look at the screen (Sorry for german language)
Now we start a small script on the raspberry called dreamkodi.sh (Originally this script is for dreamcast online gaming purposes only, but at this time we can also use it here as PPP-ISPRouter)
Connecting from Linux machine to Windows/Linux PPP Server
- Create a new Connection in Windows and setup an Fake-ISP:
- Create a advanced connection settings:
Click next, chooses TCP/IP and Finish the process.
Now you can start your Linux machine.
- Download PPP and chat
- Create a file /etc/ppp/options:
- Add:
dream PPTP <password> *
to /etc/ppp/chap-secrets
debug #- log transactions to /var/log/messages
noauth
nobsdcomp
nodeflate
name dream #- MS-CHAPv2
remotename PPTP
require-mppe-128 # 40 Bits also working with noccp
#mtu 552
#mru 552
noipx
noccp #- No 'buggy' (Compression Control Protocol) negotiation
/dev/ttyS1 #- ( S1 = COM2, S2 = COM3, S3 = COM4)
115200 #- Baud rate. Max supported bu UART chipset, not modem.
modem #- Serial link is connected to a modem
crtscts #- Use hwflow control (RTS and CTS) to controlserial line
asyncmap 0 #- Choice of mapping of control characters
defaultroute #- PPP becomes the default route to the internet
noipdefault #- Not a static IP address. IP address assigned by ISP.
lock #- Don't let other procs besides PPP _ (/var/lock/)
#
# Starting of chat to com:
#
connect "/usr/sbin/chat -v -t 240 -f /etc/ppp/chat-isp"
:
3. Create a file /etc/ppp/chat-isp:
ABORT 'BUSY'
ABORT 'NO CARRIER'
'' ATZ
#'' ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK ATDT,**3
CONNECT ""
#ogin: <username>
#sword: <password>
Optional:
ABORT 'NO DIALTONE'
ABORT 'NO ANSWER'
ABORT 'ERROR'
Mehr zu chat:
http://www.linuxhaven.de/dlhp/HOWTO/DE-PPP-HOWTO-14.html
4. Setup your ppp command as sticky to run without root: (this is not recommend for security reasons, only for testing)
chmod u+s /usr/sbin/pppd
5. Now run your PPP client to connect and you're finished.
Alternative linux ppp connect programs:
Wvdial:
I've build a small Bash-Script to automate the first run:
#! /bin/bash
#
# wvdial - runner script 0.1a
# (C) suuhm - https://the-suuhmmary.coldwareveryday.com
echo "wvdial config - and run tool"
echo; sleep 2
# Setup Config:
wvdialconf /etc/wvdial.conf
# Set SUID on wvdial for group dialout:
groupadd dialout
gpasswd -a username dialout
chgrp dialout /usr/bin/wvdial
chmod u+s,o= /usr/bin/wvdial
# Run:( in loop if connection / program breaks )
echo
echo "Run program:" ; sleep 2
(
while : ; do
wvdial
sleep 10
done
) &
exit 0;
More to read here:
X-ISP
Older dial program with graphical interface lib:
X-ISP is a visual, X11/XForms based, user-friendly interface to pppd/chat, i.e. a dialup TCP/IP tool with an X11 interface. It is also a small ISP and phone company (PTT) database manager, and a dialup costs and usage logging/statistics tool. It provides maximum feedback from dialing and login phases on a message browser, versatility in interrupting a call in progress, a manual login terminal window, as well as call-back and per-ISP DNS selection capabilities.
Thanks to yolinux for some sources and more: