Roadshow TCP/IP Stack on Minimig

abbub
Posts: 36
Joined: Mon May 25, 2020 3:52 pm
Location: Fort Collins, CO
Has thanked: 2 times
Been thanked: 7 times
Contact:

Roadshow TCP/IP Stack on Minimig

Unread post by abbub »

Got this set up and working last night. I've found Roadshow to be a performant, small-footprint TCP/IP stack (I run it on my real Amiga 2000, too) and it's actively developed, which means you don't wander around the internet searching for lost keys, etc. I think I paid 25 or 30 bucks for it.

In setup, under 'UART Mode' set the connection to PPP. Set the Baud to 115200.

For good measure, I always select 'Reset UART connection' after I've changed it, but I think that's mostly just superstition.

Install Roadshow. You can use all of the default settings.

Copy the PPP interface from the installed 'storage' location to the NetInterfaces folder in DEV:

Code: Select all

Copy SYS:Storage/NetInterfaces/PPP#? DEVS:NetInterfaces
Next copy the PPP configuration file example to a new file which you can edit:

Code: Select all

Copy S:PPP-Configurations/PPP-Example S:PPP-Configurations/PPP
Edit the new configurations file:

Code: Select all

Ed S:PPP-Configurations/PPP
These are the uncommented lines in my configuration:

Code: Select all

interface=PPP
device=serial.device
speed=115200
rtscts=no
checkcarrier=no
nullmodem=yes
Everything else, like the dialstring, username, password, etc. should be commented out.

Save the configuration file and add the network device:

Code: Select all

AddNetInterface PPP
Hopefully at this point, you should see a message telling you that it worked correctly, and you can use the ppp_dialer command to start up the ppp connection:

Code: Select all

ppp_dialer S:PPP-Configurations/PPP
If you want to run it in the background, you can nil: it:

Code: Select all

run <nil: >nil: ppp_dialer S:PPP-Configurations/PPP
Internet configuration files are located in DEVS:Internet. The only one I changed was name_resolution to add 8.8.8.8 as a nameserver. Roadshow does come with some basic internet utilities, including ftp and ping. as soon as you run the ppp_dialer, you should be able to open a cli and ping the ip address of your MiSTer to make sure it's seeing the local network, and then ping google.com to make sure name resolution is working.

You can also, if you choose, add the ppp_dialer command to your user-startup file for 'always-on' internet.

I recommend picking up the following apps:

AmiFTP for a nice WB FTP client.
AmIRC for IRC
DCTelnet for telnet BBSing
IMP for streaming audio :)
abbub
Posts: 36
Joined: Mon May 25, 2020 3:52 pm
Location: Fort Collins, CO
Has thanked: 2 times
Been thanked: 7 times
Contact:

Re: Roadshow TCP/IP Stack on Minimig

Unread post by abbub »

Note: on a *real* amiga with a serial connection, you'd probably want to find one of the faster, more stable devices to replace serial.device. On MiSTer with AmigaOS 3.1.4, I haven't really had any issues with the speed performance of the stock serial.device. I may play around with some of those to see if there's any difference / improvements, but the version that comes with the OS seems to work fine.
User avatar
uigiflip
Posts: 27
Joined: Sun May 24, 2020 7:28 pm
Been thanked: 2 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by uigiflip »

has uart mode disappeared for pi midi?
Ultimate MiSTer Blissbox pro version, Replay Vidor version, Replay 2, Real Amiga's 500+, 500+ with pi storm, a1200 in cd32 special edition case. https://www.twitch.tv/uigiflip
ByteMavericks
Posts: 56
Joined: Tue Oct 27, 2020 4:52 pm
Has thanked: 69 times
Been thanked: 11 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by ByteMavericks »

uigiflip wrote: Sat Feb 20, 2021 10:55 pm has uart mode disappeared for pi midi?
No, it's still there, it's in the SYSTEM page of the OSD (push right arrow when on the CORE page). It's definitely working and you've got the choice of None, PPP, Console, MIDI or Modem
netizensmith
Posts: 3
Joined: Mon Apr 12, 2021 4:38 pm

Re: Roadshow TCP/IP Stack on Minimig

Unread post by netizensmith »

Not sure if anyone can help but this isn't working at all for me:

1. Did you really mean "device=serial.device" and not "device=ppp-serial.device"?
2. "AddNetInterface PPP" errors saying PPP is already there (it's set up in S:Network-Startup - Roadshow installer must have done this)
3. ppp_dialer errors saying "Connection attempt failed (resource allocation failure. Transmission failed - too many retries)

The instructions appear to be copying PPP to Devs: but then editing and using s:
I'm really confused as to what's actually being set up here lol.

EDIT: OK I get it now. PPP in DEVS:NetInterfaces and PPP in S:PPP-Configurations are different things

Following the OP's instructions from scratch gave me a ppp_dialer crash the first time but after a reboot only the ppp_dialer command is needed and I have a connection :)
mahen
Posts: 185
Joined: Sun May 24, 2020 8:25 pm
Has thanked: 19 times
Been thanked: 6 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by mahen »

Hi, followed your tutorial and got RoadShow to work with my 3.2.1 installation, great !
However, sometimes, it seems to break (?!) the AmigaShell autocompletion and freeze the shell.
Any idea ? Does it make any sense ?
I have a pretty clean installation and before attempting RoadShow, no crash / instability.
(apart from some cases when RTG modes changes makes the core go bananas and I have to switch off completely the MiSTer)
mahen
Posts: 185
Joined: Sun May 24, 2020 8:25 pm
Has thanked: 19 times
Been thanked: 6 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by mahen »

Also, I'm looking for an easy way to disconnect / reconnect (and automate that when using Whdload games). Roadie is not an option as it overwrites the config files !

OK, just using IconX and CTRL-C before starting a game is OK... I just start the stack for imp & amirc anyway :)
Sprudel
Posts: 2
Joined: Sun Apr 03, 2022 6:58 am

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Sprudel »

Hi everyone,
thanks for the help how to do the setup. I got it working with my OS 3.2.1 workbench on my Mister.
What I have noticed is that if the Linux firewall with default settings is enabled the internet connection within Minimig core seems to be fine (I get a proper IP address) but any connection (e.g. ping) is blocked. If I disable the firewall via stop script it will work again. Did anyone achieve to use internet inside Minimig core while keeping the Linux firewall enabled? Thanks in advance for any hints.
Sprudel
Posts: 2
Joined: Sun Apr 03, 2022 6:58 am

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Sprudel »

Hi everyone,

yesterday evening I was finally able to solve it and I would like to share my changes I did in the "iptables.up.rules" configuration file at /media/fat/Linux. Basically you can keep all existing "INPUT" and "OUTPUT" rules. All "FORWARD" traffic is rejected by default:

Code: Select all

-A FORWARD -j REJECT
and I had to add the following prior to this line:

Code: Select all

-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i ppp+ -o eth0 -j ACCEPT
After a reboot my PPP based internet connection within the Minimig core was fully working.
Lamaman1971
Posts: 24
Joined: Fri Aug 06, 2021 11:55 pm
Has thanked: 5 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Lamaman1971 »

Hi Folks,

Ive been trying to get this working but when I execute PPP_Dialer I get the message "Error: Connection attempt failed (Resource Allocation Failure, Transmission Failed - too many retries).

The network connection on the Mister is fine and I am at a loss to explain it. Has anyone see this before and can advise?

Thanks

Mark
kolla
Posts: 191
Joined: Sat Jun 13, 2020 7:56 am
Has thanked: 17 times
Been thanked: 33 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by kolla »

And have you enabled PPP in the Minimig core settings?
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Malor »

After setting PPP, remember you have to get the baud rate and parity settings right in Roadshow. I have no idea where to set that, as I've never used it.

edit: oh, look in the first post, there are some Roadshow settings there that appear to work.
Lamaman1971
Posts: 24
Joined: Fri Aug 06, 2021 11:55 pm
Has thanked: 5 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Lamaman1971 »

Hi Folks, just a quick update. I found the solution in another post - probably something that needs to be pinned IMHO.

Turns out if you have both a wifi dongle and an RJ45 connected this doesnt work. Even if, like me, the wifi isnt actually configured to connect to anything (I use it for Bluetooth). My solution was to unplug the RJ45 and connect the WIFI to my wireless network then everything started working - Miami and Roadshow.

Thanks for everyone's kind assistance. Hope this helps someone else too.
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Malor »

Anytime you have multiple network devices connecting to the same physical network, things can get very confused. There are advanced reasons why you might want to do this (like port bonding, although that doesn't apply to mixing Ethernet and Wifi, AFAIK), but unless you're a network expert and know exactly why you're setting things up that way, don't. You've learned this already, but for others: just avoid the situation. Frustration will ensue. Ethernet is much better on the Mister anyway, so stick with that if you have the option. Adding WiFi will not give you a backup connection method, it will dish out pain.

You're the second person I've seen with this problem, btw, although I think the other person was using a different TCP/IP stack. Adding a note to the Readme.md in the Amiga folder might be a good idea. Dunno who's responsible for that.
Lamaman1971
Posts: 24
Joined: Fri Aug 06, 2021 11:55 pm
Has thanked: 5 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Lamaman1971 »

The odd thing here is that my WiFi adaptor was not connected to, or associated with, my wireless network - so it wasnt an IP issue - simply that I had the dongle plugged in. My RJ45 connection to the network worked fine too. The DE10 obviously had an issue with both sets of drivers being loaded irrespective of a network connection. This is an issue as my Bluetooth dongle includes WiFi whether you want to use it or not - so for now Ive disconnected my superior RJ45 connection to accommodate this idiosyncrasy.
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Malor »

Oh, how annoying. What a weird bug.
User avatar
robbiew
Posts: 4
Joined: Tue Jan 25, 2022 9:20 pm
Has thanked: 1 time

Re: Roadshow TCP/IP Stack on Minimig

Unread post by robbiew »

I'm still unable to ping... I've followed these instructions using a freshly installed MiSTer, OS 3.2 and Roadshow. I've got a network connection but no ability to ping. Using ethernet, no wifi dongles, and I've disabled the linux firewall and rebooted.

EDIT:
** I can ping local addresses, just not external domains like google.com And Roadieis listing my MiSTer IP address as the 'default gateway address', not sure if that's right?
** Same situation on the Atari ST core w/Sting... Can Ping local, but not outside network

Using Roadie, I get the following (screenshots attached) --

Any other things I should try? Thanks for any tips!

1.jpg
1.jpg (3.08 MiB) Viewed 5746 times
2.jpg
2.jpg (1.76 MiB) Viewed 5746 times
3.jpg
3.jpg (2.04 MiB) Viewed 5746 times
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Malor »

The gateway needs to be the IP of your router, which in this case might be the MiSTer. An IP address of 192.168.1.254 is logically possible, but it's pretty unusual. It's more normal to be down somewhere around .50 or maybe .100 instead. And a gateway address of .226 is extremely odd. Again, from a code and specifications perspective, this is perfectly acceptable, but it's weird. Nearly everyone puts the IP address of the gateway on .1, or once in a great while on the .254 that you're apparently using as your client IP. I wonder if the two parameters are maybe backward? I'd definitely try .1 as the gateway to see what happens.

I'm unclear on whether the Mister is doing NAT for you or not. If it's just passing the addresses through without doing NAT, then presumably your external network is also 192.168.1.X. If it is doing NAT, the PPP daemon will probably get hopelessly confused if your main network is also on 192.168.1.X. The default for most consumer routers is generally to use 192.168.0.X, and that's fine..... NATting from 192.168.1 to 192.168.0 works great. But if both sides are the same number range, the routing engine won't know where packets are supposed to go, and things will mostly not work.

If you can tell us the external IP of the Mister, that would be useful. If you use SSH, it's whatever IP address you connect to for that. If you don't, use F9 to drop to the console, type 'ifconfig eth0', and on the second line of the output, it will say 'inet A.B.C.D'. Tell us what the A.B.C.D is.

User avatar
robbiew
Posts: 4
Joined: Tue Jan 25, 2022 9:20 pm
Has thanked: 1 time

Re: Roadshow TCP/IP Stack on Minimig

Unread post by robbiew »

Sure! Here's 'ifconfig eth0' -- (note, I am assigning the IP address of 192.168.1.65 to my MiSTer via my router, so it's always consistent, and that's different than what's in the screenshots above, which was being assigned .226):

inet 192.168.1.65 netmask 255.255.255.0 broadcast 192.168.1.255

Thanks a lot for your advice!

Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Malor »

I'm sorry, I'm a little confused by your wording. Your router is on .226? That would be legal, but unusual.

Also, I should have asked you this already, but what is the output of "route -n" from the Mister's CLI? It will probably be three lines long. If copy/pasting the whole thing is difficult, like if you're not running SSH, the key item is on the line leading with 0.0.0.0. I'd like to know the number in the Gateway column on that line.

The rest of the info could be useful, if copy/paste is easy.

(edit to add: I'm trying to determine whether the PPP engine is doing NAT or not, and what your router's IP is. I think the problem is probably that you're using 192.168.1 on both sides of the link. You will probably need to renumber the Amiga side into a different network, like 192.168.2. You can't have the same network range on both sides of a NAT-style link, which I'm pretty sure is what the PPP daemon is trying to set up.)

User avatar
robbiew
Posts: 4
Joined: Tue Jan 25, 2022 9:20 pm
Has thanked: 1 time

Re: Roadshow TCP/IP Stack on Minimig

Unread post by robbiew »

Sorry, that was confusing I realize... My mister was being (previously) dynamically assigned the .226 IP address, I changed it last night (at the router level) to always assign .65 going forward.

Here's "route-n":

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 1002 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 1002 0 0 eth0

Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Malor »

Ah, okay. So your gateway is .254. That's fine, it's just slightly unusual... your router is the last IP in the range instead of the first. Not a problem, you don't need to change anything.

edit: I've looked around the config files awhile, and boy, I don't understand what's going on with this. I think I need to try installing Roadshow so I can understand what the Amiga is actually seeing from the PPP daemon.

One thing you could try, but which may not work: edit the file /media/fat/linux/ppp_options. Go to the absolute end of the file, and add this line under everything else:

Code: Select all

192.168.2.1:192.168.2.10

That's explicitly setting the Amiga to be 192.168.2.10, and the PPP host to be 192.168.2.1. Save the file and reboot the Mister, just in case. Then restart the Amiga core and run Roadshow.

The Amiga config you should end up with should be:

address 192.168.2.10
netmask 255.255.255.0
gateway 192.168.2.1

See if you can ping 192.168.2.1 (the PPP daemon on the Mister), and then 192.168.1.254 (your real gateway). If the second ping works, try pinging 8.8.8.8. If that works, set your DNS to whatever you normally use, and you should be golden.

This may still fail dismally, because I don't actually understand how the Mister is controlling PPP, and the man page for pppd is epic in scope. I'll probably need to spend an hour or two with Roadshow to figure it out.

If the experiment failed, go back into /media/fat/linux/ppp_options, and remove that last line. It'll probably just confuse things.

User avatar
robbiew
Posts: 4
Joined: Tue Jan 25, 2022 9:20 pm
Has thanked: 1 time

Re: Roadshow TCP/IP Stack on Minimig

Unread post by robbiew »

Success!

Adding that line to ppp_options did the trick (just had to change from '192.168.2.1:192.168.2.10' to '192.168.1.1:192.168.1.10' based on my network).

Going to play a around a bit more, but WOW I think it's working. Thank you SO much for your help here.

Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: Roadshow TCP/IP Stack on Minimig

Unread post by Malor »

The .2 was the important part, as far as I could tell. It was very deliberately different than your main .1.

But, hey, if it's working, off you go. :)

Post Reply