PDA

View Full Version : DC Internet via P.C. Linux (by Darkmoon)



Darksaviour69
October 11th, 2006, 14:01
SEGA Dreamcast to Broadband...


If you have a Dreamcast with standard MODEM, you have a PC connected to broadband, and you don't want the Dreamcast to use the telephone line to play Phantasy Star Online, this guide is for you..

Everything ni this document is legal, every software used is freeware. I'm absolutely NO RESPONSIBLE for any damage, harm or bad use of any equipment, software or everything else. Relax, this never happens, but I had to say it.

The big picture? You make the computer to be the service provider for the Dreamcast (ISP)

original posting/site http://ragol.homeunix.net/4.html copied with premission from darkmoon

Ok, let's get into bussiness. You NEED this:

1. Dreamcast with standard modem (*)
2. PC connected to the internet, and additional modem on it for the dreamcast(**)
3. Some wire, luck and patience.

THE BIG PICTURE:
http://dreamcast.dcemu.co.uk/pics/linuxdc.gif

Connection diagram

The 486 machine is just an example... I think those computers don't even exist today...LOL. The cable modem is an example too, but it says the computer is connected to the internet in some way.

(**) Computer must be connected to the internet, and have installed an aditional analog modem, so you connect the dreamcast modem to this computer modem via a standard telephone cable.

Before you continue reading, you need to know the following:

1. You HAVE Linux, FreeBSD, NetBSD, UNIX or alike knowing.
2. You know how to configure internet settings on the Dreamcast.
3. If I tell you ethernet address, IP address, ppp server, NAT, gateway, you know what I'm talking about.

for me, my '486' of the picture uses NetBSD (http://www.netbsd.org/) , and this guide talks about it too. If you use Linux (http://www.linux.norg/) , it's almost the same, only little things change.

First Bout: configure the Dreamcast

Dreamcast must be configured as follows:

1. Put Web browser GDROM and boot.

go to 'internet conection'

http://dreamcast.dcemu.co.uk/pics/menu.gif

change the following data:

a. User login: put dreamcast
b. Password: put ppptest
c. Dial up number: enter 666 (it can be 123, 456, 222, and so on).

Leave DNS stuff untouched (blank). The ppp server will do the trick... click 'okay'.

d. In 'dial options' Section, leave everything blank up to 'modem init string'. You put there;:

AT&F0 (it's the zero character, not letter 'o')

e. Dial Tone
f. Dial area code off
g. Blind dial on (very important, without this it won't work).

http://dreamcast.dcemu.co.uk/pics/dial.gif

h. Click on 'okay'. Don't use any proxy. Save the changes.

http://dreamcast.dcemu.co.uk/pics/save.gif

Second Bout: configure the server

Ok, now the PPP server. You must install some software packages depending on the UNIX you use.

1. Server requirements

- Create a shell account called dreamcast (details later) - Your kernel must have PPP support. - Standard MODEM, 33.6 Kbps and up, serial, PCI, ISA or any that WORKS.
a. mgetty

Installing mgetty is rather simple on NetBSD:

# cd /usr/pkgsrc/comms/mgetty+sendfax && make install clean

Linux people should install mgetty package or similar. Please check the mgett homepage if you have any problems. http://alpha.greenie.net/mgetty/

My config will live in /usr/pkg/etc/mgetty+sendfax. These files are there:

dialin.config
faxheader
faxrunq.config
faxspool.rules.sample
login.config
mgetty.config
sendfax.config

What really matters: login.config and mgetty.config. Here they are for you, hack them as needed:

http://ragol.homeunix.net/login.config
http://ragol.homeunix.net/mgetty.config

Look at speed 38400. My modem is 33.6Kbps, so 38400 is the right value. If you have a 56.6Kbps modem, the parameter is 57600.

Now, /etc/ttys file must look like this (NetBSD):

tty00 "/usr/pkg/sbin/mgetty -s 38400 -D /dev/tty00" dialup on insecure

for Linux people, the file is called /etc/inittab:

d1:12345:respawn:/usr/sbin/mgetty -s 38400 -D /dev/ttyS0

Pay attetion to device names. I have MODEM in COM1 or /dev/tty00 (NetBSD) (/dev/ttyS0 under linux). Of course you must put correct values accodingly (ex., COM4 or /dev/tty03 under netbsd or /dev/ttyS3 under linux).

Save changes and reload inittab:

# kill -HUP 1

Now we can configure the PPP server.

b. PPP server

You must hack the ppp config. In my case, it's in /etc/ppp. Some interesting files are there:

options
options.tty00
pap-secrets

options must contain the following:
debug
login
require-pap
default-asyncmap
ms-dns 172.16.1.1
proxyarp

Pay attention to the ms-dns line. You say there the DNS server the Dreamcast will use to resolve names, so fi you plan to connect the Dreamcast for browsing the internet, use your LAN ip address of your gateway. 172.16.1.1 is the IP address of my gateway on the LAN side. If you plan to play PHANTASY STAR ONLINE, you MUST put Schkhack DNS IP there, I mean:

ms-dns 207.134.231.160

or whatever the IP address of the server is.

options.tty00 will tell which IP address the Dreamcast will have once the connection is being made with your ppp server. I use the 172.16.1.0/28 range for my LAN, and I want the dreamcast to be part of my LAN, so I put on options.tty00 this:

176.16.1.1:176.16.1.3

And that means the Dreamcast will have 172.16.1.3 IP address. You must change the values to match the network numbers you use (192.168.x.x maybe?).

pap-secrets has the account data, username and password. Remember what you put in there:

dreamcast * ppptest *

In order to work, those values must match the unix user. If you use NetBSD or Linux, create the dreamcast user with:

# useradd -G dialer -c "Dreamcast user" -d /home/dreamcast -g users -s /usr/sbin/pppd dreamcast

What really matters is the shell the user has (/usr/sbin/pppd). In my case the user must belong to 'dialer' group, because on my system users who are in 'dialer' group can dial to the ppp server and connect..

Final Bout: testing!

Now the good part. Look at the log files... highly recommended! Look the Dreamcast too...^_^

Time for the 'tail' command. In my case, the files are:

/var/log/mgetty.tty00
/var/log/messages

tail -f is your friend, do that on two windows, it will make your life easier.

Open another terminal and let's make the commands to make this work.

a. Dreamcast connection to the server

You must connect the dreamcast modem to the server modem via the telephone cable. On the Dreamcast side, no problem, only one input called LINE. On the computer/server/PC side, connect the cable to the LINE input. IN any case, do NOT connect it on the PHONE input. I insist, PHONE is bad, LINE is good. Now you're ready to dial and make the connection!!!

Now we'll test the Web browser. Put it on the DC and boot. If you configured 'verbose modem messages' before, you'll see some funny stuff while connecting. The text ATDT666 or ATDT123 should appear there when you click on 'connect'... the dreamcast is waiting the the pc to answer!!!

IN that moment (some seconds can pass, there's no rush) we must enter this command on the server:
# kill -USR1 `/var/run/mgetty.pid.tty00` (Linux buddies: killall -USR1 mgetty)

After the kill command you'll hear music (I mean, the modem weird sounds)... if you don't hear anything on the dreamcast side, check the next section.

These are some of my log files, so you can make an idea what should happen:
>
bash# tail -f /var/log/mgetty.tty00
09/17 22:13:49 y00 wfr: waiting for ``RING''
09/17 22:13:49 y00 send: ATA[0d]
09/17 22:13:49 y00 waiting for ``CONNECT'' ** found **
09/17 22:14:04 y00 send:
09/17 22:14:04 y00 waiting for ``_'' ** found **
09/17 22:14:10 ##### data dev=tty00, pid=26697, caller='none', conn='38400', name='', cmd='/usr/bin/login', user='dreamcast'

bash# tail -f /var/log/messages
Sep 17 22:14:11 dhcp-4-9 pppd[26697]: pppd 2.4.0 started by dreamcast, uid 1020
Sep 17 22:14:11 dhcp-4-9 pppd[26697]: Using interface ppp0
Sep 17 22:14:11 dhcp-4-9 pppd[26697]: Connect: ppp0 <--> /dev/tty00
Sep 17 22:14:12 dhcp-4-9 pppd[26697]: user dreamcast logged in
Sep 17 22:14:12 dhcp-4-9 pppd[26697]: found interface ep1 for proxy arp
Sep 17 22:14:12 dhcp-4-9 pppd[26697]: local IP address 176.16.1.1
Sep 17 22:14:12 dhcp-4-9 pppd[26697]: remote IP address 176.16.1.3



If your modem (dreamcast) does NOT dial... Some dreamcast modems need telehpone line current in order to work (like mine). You must build this simple device (Very Simple Intercom Unit):

Simple InterCom (http://www.epanorama.net/documents/telecom/telephone_intercom.html)

you can use a battery too. I use a transformer. It works fine with the recommended 12V. I've tested with 14V, 9V and liek 10V.


Hope this helps. Feel free to send any questions to [email protected].

ßüboni¢ $oñic
October 12th, 2006, 08:05
why is the phoneline connected to the compnot sending anypower thru the line..? and what happens if u got a comp on sumthin else anbd u connect a DC to that BBA/LAN2PC? does that work?

Smurph
October 12th, 2006, 17:45
why is the phoneline connected to the compnot sending anypower thru the line..? and what happens if u got a comp on sumthin else anbd u connect a DC to that BBA/LAN2PC? does that work?

Protip: A line voltage inducer works wonders.

ßüboni¢ $oñic
October 14th, 2006, 11:20
YEA I KNOW IT WORX BUt my POint was its too much work and too delicate a task just to do that. How come you can't say put it thru a splitter connected to a device with a power cord or maybe into the wall and then unplug that part from the wall?too many places to dial?would it confuse it.

kohan69
February 11th, 2007, 08:10
Does this method work through a Virtual machine?

and

did anyone ever try using something like dc-modem to pc-modem to voip service (skype?) , to transfer the original dc modem signal ?

jmetal88
May 27th, 2009, 16:52
Hey, does anyone know why a particular Dreamcast modem might dial out, but not recognize the modem's handshake when it picks up? My DC just says there's no answer when I try this, and I know it's dialing, 'cause I can hear three tones coming out of my PC modem speaker if I have it pick up before I start dialing.

Tachikoma_Pilot
May 27th, 2009, 17:33
You may need an inducer then friend.

jmetal88
May 27th, 2009, 17:52
If I do, then this report is wrong:

http://dreamcast.onlineconsoles.com/phpBB2/viewtopic.php?t=8755

Of course I'll build one anyway, and if it works afterward, I'll let them know.

jmetal88
May 27th, 2009, 19:12
Yeah the inducer works, as far as the handshake goes.

As for actually doing anything, it fails miserably. Messages.log seems to be the file of interest, although I can't tell what's going wrong yet:

May 27 13:09:11 myhost pppd[3532]: pppd 2.4.4 started by , uid 1001
May 27 13:09:11 myhost pppd[3532]: Using interface ppp0
May 27 13:09:11 myhost pppd[3532]: Connect: ppp0 <--> /dev/tts/1
May 27 13:09:14 myhost pppd[3532]: user pppuser logged in
May 27 13:09:14 myhost pppd[3532]: PAP peer authentication succeeded for pppuser
May 27 13:09:14 myhost pppd[3532]: Connect time 0.1 minutes.
May 27 13:09:14 myhost pppd[3532]: Sent 79 bytes, received 88 bytes.
May 27 13:09:14 myhost pppd[3532]: Connection terminated.
May 27 13:09:14 myhost pppd[3532]: Connect time 0.1 minutes.
May 27 13:09:14 myhost pppd[3532]: Sent 119 bytes, received 92 bytes.
May 27 13:09:14 myhost pppd[3532]: Exit.

jmetal88
May 28th, 2009, 00:33
Alright, I got that fixed, now I need to figure out why the Dreamcast can't resolve any IP addresses... I'll try a few different options for DNS servers, I guess.

jmetal88
May 28th, 2009, 01:43
I found a better log file to watch, /etc/daemon.log:

May 27 19:40:59 myhost pppd[3734]: pppd 2.4.4 started by , uid 1001
May 27 19:40:59 myhost pppd[3734]: using channel 3
May 27 19:40:59 myhost pppd[3734]: Using interface ppp0
May 27 19:40:59 myhost pppd[3734]: Connect: ppp0 <--> /dev/tts/1
May 27 19:40:59 myhost pppd[3734]: sent [LCP ConfReq id=0x1 <asyncmap 0x0> <auth pap> <magic 0x5be9ebea> <pcomp> <accomp>]
May 27 19:40:59 myhost pppd[3734]: rcvd [LCP ConfReq id=0x2a <asyncmap 0x0> <pcomp> <accomp> <magic 0x6ced>]
May 27 19:40:59 myhost pppd[3734]: sent [LCP ConfAck id=0x2a <asyncmap 0x0> <pcomp> <accomp> <magic 0x6ced>]
May 27 19:40:59 myhost pppd[3734]: rcvd [LCP ConfReq id=0x2b <asyncmap 0x0> <pcomp> <accomp> <magic 0x6ced>]
May 27 19:40:59 myhost pppd[3734]: sent [LCP ConfAck id=0x2b <asyncmap 0x0> <pcomp> <accomp> <magic 0x6ced>]
May 27 19:41:00 myhost pppd[3734]: rcvd [LCP ConfReq id=0x2c <asyncmap 0x0> <pcomp> <accomp> <magic 0x6ced>]
May 27 19:41:00 myhost pppd[3734]: sent [LCP ConfAck id=0x2c <asyncmap 0x0> <pcomp> <accomp> <magic 0x6ced>]
May 27 19:41:02 myhost pppd[3734]: sent [LCP ConfReq id=0x1 <asyncmap 0x0> <auth pap> <magic 0x5be9ebea> <pcomp> <accomp>]
May 27 19:41:02 myhost pppd[3734]: rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <auth pap> <magic 0x5be9ebea> <pcomp> <accomp>]
May 27 19:41:02 myhost pppd[3734]: rcvd [PAP AuthReq id=0x4 user="pppuser" password=<hidden>]
May 27 19:41:02 myhost pppd[3734]: user pppuser logged in
May 27 19:41:02 myhost pppd[3734]: sent [PAP AuthAck id=0x4 "Login ok"]
May 27 19:41:02 myhost pppd[3734]: PAP peer authentication succeeded for pppuser
May 27 19:41:02 myhost pppd[3734]: sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
May 27 19:41:02 myhost pppd[3734]: sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 192.168.2.1>]
May 27 19:41:02 myhost pppd[3734]: rcvd [IPCP ConfReq id=0x7 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0> <compress VJ 0f 00>]
May 27 19:41:02 myhost pppd[3734]: sent [IPCP ConfNak id=0x7 <addr 192.168.2.2> <ms-dns1 68.94.156.1> <ms-dns3 68.94.157.1>]
May 27 19:41:02 myhost pppd[3734]: rcvd [LCP ProtRej id=0x4 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
May 27 19:41:02 myhost pppd[3734]: Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
May 27 19:41:02 myhost pppd[3734]: rcvd [IPCP ConfAck id=0x1 <compress VJ 0f 01> <addr 192.168.2.1>]
May 27 19:41:03 myhost pppd[3734]: rcvd [IPCP ConfReq id=0x8 <addr 192.168.2.2> <ms-dns1 68.94.156.1> <ms-dns3 68.94.157.1> <compress VJ 0f 00>]
May 27 19:41:03 myhost pppd[3734]: sent [IPCP ConfAck id=0x8 <addr 192.168.2.2> <ms-dns1 68.94.156.1> <ms-dns3 68.94.157.1> <compress VJ 0f 00>]
May 27 19:41:03 myhost pppd[3734]: Cannot determine ethernet address for proxy ARP
May 27 19:41:03 myhost pppd[3734]: local IP address 192.168.2.1
May 27 19:41:03 myhost pppd[3734]: remote IP address 192.168.2.2
May 27 19:41:03 myhost pppd[3734]: Script /etc/ppp/ip-up started (pid 3739)
May 27 19:41:03 myhost pppd[3734]: Script /etc/ppp/ip-up finished (pid 3739), status = 0x0

I'm guessing that "Cannot determine ethernet address for proxy ARP" is my problem, but I can't find anything through Google that tells me how to fix it.

jmetal88
May 28th, 2009, 02:00
Got it!

Hadn't enabled IP forwarding.

This guide helped out a lot:

http://wiki.archlinux.org/index.php/Internet_Share

jmetal88
May 28th, 2009, 03:30
Well, I can browse the web, but PSO is sending this instead of my user name:

'}#@!}!}!} }4}!}$}%\}"}&} }*} } }%}&}24ch]j~}#@!}!}"} }4}!}$}%\}"}&} }*} } }%}&}24chW~}#@!}!}#} }4}!}$}%\}"}&} }*} } }%}&}24ch^D~}#@!}!}$} }4}!}$}%\}"}&} }*} } }%}&}24ch}2$~}#@!}!}%} }4}!}$}%\}"}&} }*} } }%}&}24ch[7~}#@!}!}&} }4}!}$}%\}"}&} }*} } }%}&}24ch'

I'm perplexed.

Tachikoma_Pilot
May 29th, 2009, 11:29
Yeah the inducer works, as far as the handshake goes.

As for actually doing anything, it fails miserably. Messages.log seems to be the file of interest, although I can't tell what's going wrong yet:

May 27 13:09:11 myhost pppd[3532]: pppd 2.4.4 started by , uid 1001
May 27 13:09:11 myhost pppd[3532]: Using interface ppp0
May 27 13:09:11 myhost pppd[3532]: Connect: ppp0 <--> /dev/tts/1
May 27 13:09:14 myhost pppd[3532]: user pppuser logged in
May 27 13:09:14 myhost pppd[3532]: PAP peer authentication succeeded for pppuser
May 27 13:09:14 myhost pppd[3532]: Connect time 0.1 minutes.
May 27 13:09:14 myhost pppd[3532]: Sent 79 bytes, received 88 bytes.
May 27 13:09:14 myhost pppd[3532]: Connection terminated.
May 27 13:09:14 myhost pppd[3532]: Connect time 0.1 minutes.
May 27 13:09:14 myhost pppd[3532]: Sent 119 bytes, received 92 bytes.
May 27 13:09:14 myhost pppd[3532]: Exit.
Connection dropped after a few, I take it you got that part lol


Alright, I got that fixed, now I need to figure out why the Dreamcast can't resolve any IP addresses... I'll try a few different options for DNS servers, I guess.
Have you checked the connection from your PC's side?


Well, I can browse the web, but PSO is sending this instead of my user name:

'}#@!}!}!} }4}!}$}%\}"}&} }*} } }%}&}24ch]j~}#@!}!}"} }4}!}$}%\}"}&} }*} } }%}&}24chW~}#@!}!}#} }4}!}$}%\}"}&} }*} } }%}&}24ch^D~}#@!}!}$} }4}!}$}%\}"}&} }*} } }%}&}24ch}2$~}#@!}!}%} }4}!}$}%\}"}&} }*} } }%}&}24ch[7~}#@!}!}&} }4}!}$}%\}"}&} }*} } }%}&}24ch'

I'm perplexed.
Are you using Ives's quick boot Schtack disc or an original?

jmetal88
May 29th, 2009, 14:45
Are you using Ives's quick boot Schtack disc or an original?

Well the first two are sorted out already, so I'll just answer this one. I am using an original PSO. I have both version 1 and version 2, they both do the same thing. Sega GT also does this when I select the Internet link that's supposed to take me to the web site. So it seems to be the norm rather than the exception, and I have no idea, if those three don't work, why PlanetWeb 3 would dial up and let me browse the web without issue.

maxim2boobles
August 21st, 2009, 00:43
It's too complicated for me and i'm running ubuntu 7.10 on imac g3 and not sure if that will work. Is the broadband adapter worth the $150 ?