https://totalizator.wordpress.com/2012/10/03/connect-windows-95-to-the-internet-using-linux-box-and-rs-232-serial-port-null-modem-cable/ How about connecting an old PC or laptop running Windows 95 to the Internet. No need for a NIC adapter or modem. All you need is a machine running Linux to share the connection, Point-to-Point Protocol daemon (PPPD) and a null modem serial cable. Configuring pppd: Edit your /etc/ppp/options to contain: ``` nodetach debug dump noauth netmask 255.255.255.0 proxyarp 192.168.1.201:192.168.1.200 ms-dns 192.168.1.1 lock passive lcp-echo-interval 8 lcp-echo-failure 6 nologfd crtscts local connect 'chat TIMEOUT 20000 CLIENT CLIENTSERVER' 115200 /dev/ttyS0 ``` Select a proper ms-dns and /dev/ttySx values depending on your network and hardware configuration. All the options can be also passed in command line if you prefer. Enable ip_forwarding: 1 ``` echo 1 > /proc/sys/net/ipv4/ip_forward ``` Start pppd by simply invoking it. Keep in mind that it will terminate every time the client disconnects. You can use the following script to restart it automatically: ``` #!/bin/sh until pppd; do echo "Respawning.." >&2 sleep 1 done ``` You may need root permissions for all the above commands. Configuring Windows 95 is as simple as opening Direct Cable Connection, choosing the Guest mode and a COM port. Click Next and connection should be established immediately. You can even browse Samba shares right away. The solution should work in Windows 98 as well but I havent tested it. Happy browsing! -------------------- https://unix.stackexchange.com/questions/474687/ppp-between-two-machines-over-serial-without-a-modem After messing around for sometime I managed to get it working. Here is the command for Fedora machine ```sudo pppd -detach local debug noauth passive lock 192.168.10.100:192.168.10.1 /dev/ttyUSB0 9600``` And here is the command for a Linux 4.14.0-xilinx-v2018.2 machine ```pppd -detach persist debug local noauth passive lock 192.168.10.1:192.168.10.100 /dev/ttyS0 9600``` I've been struggling with the problem for the past 2 months. Not sure why this question was initially downgraded. I imagine there are other people who had the same issue. --------------------- working config for me ``` nodetach local debug noauth passive lock proxyarp defaultroute 192.168.0.10:192.168.0.201 # yourlanip:clientlanip ms-dns 192.168.254.1 /dev/ttyUSB0 115200 ``` how to add win 95 null modem serial internet connection http://fpga-site.com/publications/supportcenter/How%20Do%20I%20install%20a%20NULL%20Modem%20Device%20in%20Windows%2095.htm mdmcisco.inf ``` [Version] Signature="$CHICAGO$" Class=Modem ClassGUID={4D36E96D-E325-11CE-BFC1-08002BE10318} Provider=%MC% LayoutFile=LAYOUT.INF [Manufacturer] %Man% = Null [Null] %MC00% = MC00, RAS-SERIAL %MC01% = MC01, RAS-PARALLEL %MC02% = MC02, RAS-GENERIC [MC00] AddReg=All, Common, MC00Reg, 115200, EXTERNAL [MC01] AddReg=All, Common, MC00Reg, PARALLEL [MC02] AddReg=All, Common, MC02Reg, 115200, EXTERNAL [All] HKR,,FriendlyDriver,,Unimodem.vxd HKR,,DevLoader,,*VCOMM HKR,,PortSubClass,1,02 HKR,,ConfigDialog,,modemui.dll HKR,,EnumPropPages,,"modemui.dll,EnumPropPages" [EXTERNAL] HKR,, DeviceType, 1, 01 [PARALLEL] HKR,, DeviceType, 1, 04 HKR,,Override,,Paralink.vxd HKR,, DCB, 1, 1C,00,00,00, 00,00,06,00, 15,20,00,00, 00,00, 0a,00, 0a,00, 08, 00, 00, 11, 13, 00, 00, 00 !--- Note: The line of code above is displayed over two lines due to space limitations. [Common] HKR, Answer, 1,,"" HKR, Hangup, 1,, "Bye" HKR, Hangup, 2,, "NoResponse" HKR, Settings, DialSuffix,, "" ; DCB's - dwords and words are byte reversed ; ByteSize (Number of bits/byte, 4-8) !--- Note: The line of code above is displayed over two lines due to space limitations. ; Parity (0-4=None,Odd,Even,Mark,Space) !--- Note: The line of code above is displayed over two lines due to space limitations. ; StopBits (0,1,2 = 1, 1.5, 2) !--- Note: The line of code above is displayed over two lines due to space limitations. ; |DCBLength |BaudRate |Bit Mask |Rsvd |XonLim|XofLim| | | |Xon |Xof|Err|Eof|Evt !--- Note: The line of code above is displayed over two lines due to space limitations. [115200] HKR,, DCB, 1, 1C,00,00,00, 00,c2,01,00, 15,20,00,00, 00,00, 0a,00, 0a,00, 08, 00, 00, 11, 13, 00, 00, 00 !--- Note: The line of code above is displayed over two lines due to space limitations. [MC00Reg] ; RAS Null-Modem HKR, Init, 1,, "" HKR, Init, 2,, "NoResponse" HKR, Settings, Prefix,,"" HKR, Settings, DialPrefix,, "CLIENT" HKR, Settings, Terminator,, "" HKR, Monitor, 1,, "None" HKR, Answer, 1,, "CLIENTSERVER" HKR, Answer, 2,, "NoResponse" ; Properties - dwords and words are byte reversed ; |Dial Options |InactivityTimeout |Speaker Mode |Max DTE Rate !--- Note: The line of code above is displayed over two lines due to space limitations. ; |CallSetupFailTimeout |Speaker Volume |Modem Options !--- Note: The line of code above is displayed over two lines due to space limitations. |Max DCE Rate !--- Note: The line of code above is displayed over two lines due to space limitations. HKR,, Properties, 1, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 30,00,00,00, 00,c2,01,00, 00,c2,01,00 !--- Note: The line of code above is displayed over two lines due to space limitations. HKR, Responses, "CLIENT", 1, 08, 00, 00, 00, 00, 00, 00,00,00,00 ; Server side - the client is requesting a connection HKR, Responses, "CLIENT", 1, 08, 00, 00, 00, 00, 00, 00,00,00,00 ; Server side - the client is requesting a connection HKR, Responses, "CLIENTSERVER", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 ; Client side - the server has acknowledged and the connection is completed !--- Note: The lines of code above are each displayed over two lines due to !--- space limitations. [MC02Reg] ; Null-Modem HKR, Init, 1,, "" HKR, Init, 2,, "NoResponse" HKR, Settings, Prefix,,"" HKR, Settings, DialPrefix,, "HELLO" HKR, Settings, Terminator,, "" HKR, Monitor, 1,, "None" HKR, Answer, 1,, "HELLO" HKR, Answer, 2,, "NoResponse" ; Properties - dwords and words are byte reversed ; |Dial Options |InactivityTimeout |Speaker Mode |Max DTE Rate !--- Note: The line of code above is displayed over two lines due to space limitations. ; |CallSetupFailTimeout |Speaker Volume |Modem Options |Max DCE Rate !--- Note: The line of code above is displayed over two lines due to space limitations. HKR,, Properties, 1, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 30,00,00,00, 00,c2,01,00, 00,c2,01,00 !--- Note: The line of code above is displayed over two lines due to space limitations. HKR, Responses, "", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 ; Accept any recvd data as CONNECTED. HKR, Responses, "", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 ; Accept any recvd data as CONNECTED. HKR, Responses, "", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 ; Accept any recvd data as CONNECTED. HKR, Responses, "", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 ; Accept any recvd data as CONNECTED. HKR, Responses, "", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 ; Accept any recvd data as CONNECTED. !--- Note: The lines of code above are each displayed over two lines !--- due to space limitations. [Strings] MC = "Mark Crossley" Man = "(NULL Modem Types)" MC00 = "RAS Serial Cable between 2 PCs" MC01 = "RAS Parallel Cable between 2 PCs" MC02 = "Generic NULL Modem" ```