• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

TashRouter: An AppleTalk Router

RolandJuno

Active member
Unfortunately, I don't see any change from before. Log attached.
Did some more testing, and it seems there's another issue?

I'm now having issues using Mini VMac LToUDP to browse netatalk's afpd (running on the same server). This used to work so I'm not sure when it stopped working. I can see the AFP share in the Chooser, select it, login with username/password, and select a share. It mounts on the desktop but double-clicking it causes the system to hang and eventually say the server unexpectedly closed after some time.

I reverted back to all previous name_information.py versions as well as the repo from a few weeks ago. None will let me mount a AFP share on Mini VMac LToUDP from netatalk on the same RaspberryPi as TashRouter. Maybe there's something else going on with my network? I tried reverting things back to the suggestions that @NJRoadfan gave me too.

Below are my settings. I'm not sure what's going on now.

$ ifconfig -a eth0: flags=4675<UP,BROADCAST,RUNNING,ALLMULTI,MULTICAST> mtu 1500 inet 192.168.1.232 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::87a3:6294:9ff3:63d9 prefixlen 64 scopeid 0x20<link> ether 00:e0:4c:68:2d:d6 txqueuelen 1000 (Ethernet) RX packets 48130 bytes 8371043 (7.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 18085 bytes 3471245 (3.3 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 793 bytes 43399 (42.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 793 bytes 43399 (42.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 tap0: flags=4611<UP,BROADCAST,ALLMULTI,MULTICAST> mtu 1500 inet6 fe80::a495:1dff:fe4c:5b0a prefixlen 64 scopeid 0x20<link> ether a6:95:1d:4c:5b:0a txqueuelen 1000 (Ethernet) RX packets 1709 bytes 105490 (103.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 260 bytes 20897 (20.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.216 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::9bc8:ae76:6310:7f67 prefixlen 64 scopeid 0x20<link> ether b8:27:eb:12:a5:c0 txqueuelen 1000 (Ethernet) RX packets 23328 bytes 6258876 (5.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 139 bytes 22766 (22.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


atalkd.conf:
eth0 -seed -phase 2 -net 2 -addr 2.222 -zone "EtherTalk Network" tap0 -seed -phase 2 -net 3 -addr 3.14 -zone "EtherTalk Network"

router.py:
import logging import time import tashrouter.netlog from tashrouter.port.ethertalk.tap import TapPort from tashrouter.port.localtalk.ltoudp import LtoudpPort from tashrouter.port.localtalk.tashtalk import TashTalkPort from tashrouter.router.router import Router logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(levelname)s: %(message)s') tashrouter.netlog.set_log_str_func(logging.debug) # comment this line for speed and reduced spam router = Router('router', ports=( LtoudpPort(seed_network=5, seed_zone_name=b'LToUDP Network'), TashTalkPort(serial_port='/dev/ttyAMA0', seed_network=6, seed_zone_name=b'LocalTalk Network'), TapPort(tap_name='tap0', hw_addr=b'\xAA\xBB\xCC\xDD\x11\x22'), )) print('router away!') router.start() try: while True: time.sleep(1) except KeyboardInterrupt: router.stop()


npblkup:
$ lookupall EtherTalk Network zone: pizero:ProDOS16 Image 3.14:3 pizero:Apple //e Boot 3.14:3 MacIPpi:AFPServer 3.14:131 LocalTime:TimeLord 3.14:129 pizero:Apple //gs 3.14:3 HP LaserJet 4000 Series:SNMP Agent 2.128:8 HP LaserJet 4000 Series:LaserWriter 2.128:157 HP LaserJet 4000 Series:HP LaserJet 2.128:158 HP LaserJet 4000 Series:HP Zoner Responder 2.128:156 LToUDP Network zone: mini vmac:SNMP Agent 5.97:8 mini vmac:PPCToolBox 5.97:252 mini vmac: Macintosh 5.97:253 mini vmac:Workstation 5.97:4 LocalTalk Network zone:
 

RolandJuno

Active member
Did some more testing, and it seems there's another issue?

I'm now having issues using Mini VMac LToUDP to browse netatalk's afpd (running on the same server). This used to work so I'm not sure when it stopped working. I can see the AFP share in the Chooser, select it, login with username/password, and select a share. It mounts on the desktop but double-clicking it causes the system to hang and eventually say the server unexpectedly closed after some time.

I reverted back to all previous name_information.py versions as well as the repo from a few weeks ago. None will let me mount a AFP share on Mini VMac LToUDP from netatalk on the same RaspberryPi as TashRouter. Maybe there's something else going on with my network? I tried reverting things back to the suggestions that @NJRoadfan gave me too.

Below are my settings. I'm not sure what's going on now.

$ ifconfig -a eth0: flags=4675<UP,BROADCAST,RUNNING,ALLMULTI,MULTICAST> mtu 1500 inet 192.168.1.232 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::87a3:6294:9ff3:63d9 prefixlen 64 scopeid 0x20<link> ether 00:e0:4c:68:2d:d6 txqueuelen 1000 (Ethernet) RX packets 48130 bytes 8371043 (7.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 18085 bytes 3471245 (3.3 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 793 bytes 43399 (42.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 793 bytes 43399 (42.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 tap0: flags=4611<UP,BROADCAST,ALLMULTI,MULTICAST> mtu 1500 inet6 fe80::a495:1dff:fe4c:5b0a prefixlen 64 scopeid 0x20<link> ether a6:95:1d:4c:5b:0a txqueuelen 1000 (Ethernet) RX packets 1709 bytes 105490 (103.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 260 bytes 20897 (20.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.216 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::9bc8:ae76:6310:7f67 prefixlen 64 scopeid 0x20<link> ether b8:27:eb:12:a5:c0 txqueuelen 1000 (Ethernet) RX packets 23328 bytes 6258876 (5.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 139 bytes 22766 (22.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


atalkd.conf:
eth0 -seed -phase 2 -net 2 -addr 2.222 -zone "EtherTalk Network" tap0 -seed -phase 2 -net 3 -addr 3.14 -zone "EtherTalk Network"

router.py:
import logging import time import tashrouter.netlog from tashrouter.port.ethertalk.tap import TapPort from tashrouter.port.localtalk.ltoudp import LtoudpPort from tashrouter.port.localtalk.tashtalk import TashTalkPort from tashrouter.router.router import Router logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(levelname)s: %(message)s') tashrouter.netlog.set_log_str_func(logging.debug) # comment this line for speed and reduced spam router = Router('router', ports=( LtoudpPort(seed_network=5, seed_zone_name=b'LToUDP Network'), TashTalkPort(serial_port='/dev/ttyAMA0', seed_network=6, seed_zone_name=b'LocalTalk Network'), TapPort(tap_name='tap0', hw_addr=b'\xAA\xBB\xCC\xDD\x11\x22'), )) print('router away!') router.start() try: while True: time.sleep(1) except KeyboardInterrupt: router.stop()


npblkup:
$ lookupall EtherTalk Network zone: pizero:ProDOS16 Image 3.14:3 pizero:Apple //e Boot 3.14:3 MacIPpi:AFPServer 3.14:131 LocalTime:TimeLord 3.14:129 pizero:Apple //gs 3.14:3 HP LaserJet 4000 Series:SNMP Agent 2.128:8 HP LaserJet 4000 Series:LaserWriter 2.128:157 HP LaserJet 4000 Series:HP LaserJet 2.128:158 HP LaserJet 4000 Series:HP Zoner Responder 2.128:156 LToUDP Network zone: mini vmac:SNMP Agent 5.97:8 mini vmac:PPCToolBox 5.97:252 mini vmac: Macintosh 5.97:253 mini vmac:Workstation 5.97:4 LocalTalk Network zone:
Ok, figured out the issues with the unresponsive netatalk share. The AFPD service was throwing an error (found in /etc/syslog) about a corrupt CNID DB in the root of the share. I stopped the service, removed it, and started AFPD again and I can connect and browse the share as usual.

Ok, back to the ImageWriter! I'm using the latest name_information.py and I've printed two jobs so far successfully! I'll do some more testing tomorrow.
 

tashtari

PIC Whisperer
Ok, figured out the issues with the unresponsive netatalk share. The AFPD service was throwing an error (found in /etc/syslog) about a corrupt CNID DB in the root of the share. I stopped the service, removed it, and started AFPD again and I can connect and browse the share as usual.
Glad to hear it!

Ok, back to the ImageWriter! I'm using the latest name_information.py and I've printed two jobs so far successfully! I'll do some more testing tomorrow.
Latest name_information.py from the repo or latest that I've attached to this thread?
 

RolandJuno

Active member
Glad to hear it!


Latest name_information.py from the repo or latest that I've attached to this thread?
I'm using the latest name_information 5 from this thread with the latest repo.

I've been trying various things, and here's what I'm observing now.

If I define different names for my zones as follows:

Network number 2: netatalk seeding (eth0) "EtherTalk Zone"
Network number 3: netatalk seeding (tap0) "EtherTalk Zone"
Network number 5: TashRouter seeding (LToUDP) "LToUDP Network"
Network number 6: TashRouter seeding (TashTalk) "LocalTalk Network"

And run netatalk and TashRouter, I'm able to print from Mini VMac to both the ImageWriter II and ImageWriter LQ without issue, selecting in in the Chooser in the "LocalTalk Network" zone. However, Namer is not able to locate the ImageWriters (there's no zone selection available in Namer).

If I define the same name for my zones (to collapse them into one zone in the Chooser) as follows:

Network number 2: netatalk seeding (eth0) "Biosrhythm Zone"
Network number 3: netatalk seeding (tap0) "Biosrhythm Zone"
Network number 5: TashRouter seeding (LToUDP) "Biosrhythm Zone"
Network number 6: TashRouter seeding (TashTalk) "Biosrhythm Zone"

From Mini VMac, I can locate both ImageWriters in Namer and rename them properly. Netatalk shows all devices belonging to the one zone properly in nbplkup. I can also locate the ImageWriters in the Chooser. But I'm not able to start any print jobs. It eventually fails and says the printer can't be found. I've attached a log for this.

I'm assuming that it's within spec to give different networks the same name, but maybe that's not allowed? It's preferable because you don't need to know which cable a device is connected to.
 

Attachments

  • tashrouter-rickards19-debugout.txt.zip
    8.7 KB · Views: 3

NJRoadfan

Well-known member
Namer is limited to only seeing and renaming devices in the current zone. That is intentional on Apple's part. Zones are strictly organizational in nature. You can name all the segments the same, or something different. Its your choice. The only limitation I've found involves netbooting Apple IIs. You have to have a netboot server in the zone your machine's LocalTalk network is in, otherwise you can't boot.
 

tashtari

PIC Whisperer
But I'm not able to start any print jobs. It eventually fails and says the printer can't be found. I've attached a log for this.
Hm. Did you re-select the printer in Chooser after you changed the zone configuration? (Maybe you have to close it after selecting the printer, not sure...) The BrRqs coming from Mini vMac that appear to be associated with the print job are looking in the zone "LocalTalk Network", which is no longer valid in your configuration, and are not getting answered.
 

NJRoadfan

Well-known member
To all TashRouter users, particularly ones using another router to seed their Ethernet networks. Update to the latest code on github. It fixes a nasty issue with the ZIP service. A packet was being sent out as unicast instead of broadcast causing an AARP storm, plus it was preventing TashRouter from updating its Zone Information Table for connected EtherTalk networks.
 

RolandJuno

Active member
Hm. Did you re-select the printer in Chooser after you changed the zone configuration? (Maybe you have to close it after selecting the printer, not sure...) The BrRqs coming from Mini vMac that appear to be associated with the print job are looking in the zone "LocalTalk Network", which is no longer valid in your configuration, and are not getting answered.
Good catch! I tried rebooting several times, and selecting the IW II in the Chooser but it still insists on looking for it on "LocalTalk Network" despite there being only one zone now (Biosrhythm Zone), according to TashRouter logs. I even tried changing the network number of the tashtalk network from 6 to 7, hoping that it would "forget" the old name but that didn't work either. I also made sure it prompted me to open Page Setup, etc., etc. acknowledging a new printer was selected.

I tried a different system disk in Mini VMac (7.1) that I hadn't tried any of this before with and it printed to the IM II from the single zone without issue.

I went back and am still puzzled as to why it still looks for it in the wrong zone. Even the third-party IM II driver MacPalette II does the same thing. Any hints as to what to try and fix this, I'm open to suggestions!

In any case, it seems that this is an OS issue now and not a TashRouter issue. BTW, I pulled down the most recent version and used name_information 5 that you provided in the thread.
 

Attachments

  • Screenshot 2024-04-07 at 2.48.54 PM.png
    Screenshot 2024-04-07 at 2.48.54 PM.png
    125.3 KB · Views: 11

NJRoadfan

Well-known member
If running classic networking, open up the Network control panel and verify the correct zone is listed. If Open Transport, open up the AppleTalk control panel. The Mac should be auto-updating this, but isn't for some reason. Also try selecting the LaserWriter in Chooser, closing it, then re-selecting the ImageWriter.
 
Last edited:

RolandJuno

Active member
If running classic networking, open up the Network control panel and verify the correct zone is listed. If Open Transport, open up the AppleTalk control panel. The Mac should be auto-updating this, but isn't for some reason. Also try selecting the LaserWriter in Chooser, closing it, then re-selecting the ImageWriter.
Thanks for the tip! I'm using Classic Networking. I verified that the Network Control Panel did have the correct Zone listed but I was still unable to print as it was still looking in the wrong Zone. What fixed it was replacing the Extension "AppleTalk ImageWriter" with another copy (and without rebooting)! The same holds true for the MacPalette II AppleTalk driver-- replacing it allowed it to work on the new Zone. Not sure why, but it worked.
 
Top