If you've created a local Bluetooth network (see this previous hint), you can run all kinds of services over this connection. One of the sweetest services I'm running is the free Darwin Streaming Server. Once installed, you can set-up a wireless local MP3 broadcast. Heres how it works.
After installation, the server will be running over the same IP address as your built-in web server (personal web sharing). Click Playlist in the menu, and set up a playlist of MP3s. Give it a name and mount point you will remember. Make sure the playlist is running. With a client machine, connect to your server. Open iTunes and use the command Advanced -> Open Stream. Enter rtps://yourIPaddress:554/mountpoint. Now iTunes should connect to and play from the server. This means you can listen to your MP3's throughout the range of your network without having them on you laptop. Bandwidth is limited, but I'm able to stream 160kbps mp3 files to a range of Mac client devices.
Likewise, you can stream video as well. I don't use a playlist for this but rather connect directly to the hinted media through the "Open URL" menu item in QuickTime Player or link in a web page. I've tested data rates at 400kbps, well above what is documented by Apple at this time.
In Panther, I suddenly lost the ability to print to my school printers over lpr/lpd. We traced the problem: Apple had changed the port from which the print job was sent from a low-numbered "trusted" port to a high-numbered one. The print server would reject this port (error #32; data file refused) as insecure. The solution is as follows. After creating your printer, do this:
% cd /etc/cups
% sudo emacs printers.conf
There will be a line that looks something like this:
where server.domain is the computer the printer queue is on, and printqname is the name of the printer queue. You must change this line to look like this:
Save the changes and quit the editor. This will enable the correct port behaviour. Then you need to restart cupsd. in a shell, do this:
Note that 348 is the cupsd (cups daemon) process id (in this example). You should now be able to successfully print. Special thanks to Carol Smith at the University of Alberta for being invaluable in solving this problem.
My problem was that I couldn't print from an OS X 10.2.8 G4 laptop via the network to my Samsung ML-1710 which is plugged into my WinXP PC . Apparently the Samsung OS X drivers only work for printers connected via USB. This solution can be used to enable a Mac to print to any printer that Linux can print to.
The CUPS ML-1210 driver on my Linux PC works fine with the ML-1710, so I decided to use it to act as a PostScript translator so that the Mac could print to it using generic PostScript, and then send the job on to the printer on my WinXP PC (or it could just as well be a printer connected locally to the Linux box).
When I started to use OS X 10.3 panther I was very pleased to find that the MTU setting of the Ethernet interface can be changed using Network preferences. As I'm using a PPPoE connection through a NAT router, I need to set the MTU to 1492 instead of the default 1500 to get my internet connection fully operational. For those of you who did not find the setting yet, it's in the Ethernet tab of the Built-in Ethernet configuration - set Configure to "Manually (Advanced)" and enter any MTU value you like!
However, Apple forgot to implement this setting for the Airport interface. The solution is basically the same as for previous OS X versions. To change the setting manually, enter the following line in the terminal (assuming en1 is your Airport interface):
% sudo ifconfig en1 mtu 1492
To fix the Airport MTU permanently, I added a line to /System -> Library -> StartupItems -> Network -> Network. At the end of the StartService() function, I added ifconfig en1 mtu 1492. This seems to work, even after waking the computer from sleep. Yet I'm not sure if this is the best way to do this - any suggestions?
For those who use /etc/hosts (or other configuration information in /etc), it seems that Panther has changed how to activate them. This time around, the BSD flat files are automatically checked on in Directory Access, but that's not all there is to it. If you click "Configure" after selecting the BSD flat files, you'll notice this message:
The node /BSD/local must be added to the Authentication or Contacts tabs for the configuration information in /etc/hosts to be used.
Just a heads-up for the Panther crowd. I'm not sure who needs information set in both tabs and who doesn't, but this is where the last of the activation is done.
Seems that people are having issues with browsing windows networks via the Panther Finder. Well I was anyway. The symptoms were that limited or no servers were being listed in the Network "directory" and sometimes servers where not characterised into workgroups (i.e. they all appeared in the Network root directory).
Using the built in SAMBA tools, I was able to isolate the problem: The Domain Master Browser (DMB) wasn't responding properly. Why this was, I'm unshure. The DMB is required for browsing of Windows networks, and is either specified by a network admin or is automatically selected by computers on the network. Watching a few processes from the terminal, I noticed that a smbclient process (using the IP of the DMB as an argument) was attempting to talk to the DMB (Panther uses smbclient and scripts to do this). The process was blocked until the DMB responded, which it didn't, thus the corresponding folders and icons the Network directory where not updated by the Finder, and the loss of network browsing.
The DMB for a workgroup can be found using the command nmblookup -M WORKGROUP, where WORKGROUP is the workgroup your Mac is in.
If you have access, shut down the DMB machine so that the Windows network can 're-elect' another Windows DMB. If this doesn't work, try executing this command:
smbcontrol nmbd force-election
This should fix the problem.
If that didn't work, or if you administrate your own network, you can make the Mac the DMB by editing the appropriate SAMBA configuration files (this is what I did).
If you're using a local proxy (Squid, Privoxy, Authoxy, ...) and you're having problems with download errors (outright failures, broken image icons, ...) under Panther, change your proxy settings to 127.0.0.1 instead of localhost.
There appears to be a problem with broken pipe errors somewhere in CoreFoundation, so any app that uses CoreFoundation to do its networking (Safari and NetNewswire, for example), will exhibit this problem. Camino is not affected by the problem.
Last night, I was able to successfully connect my Panther iBook to my PC via a 400 Mbit FireWire connection. Extending on a previous hint, here's how you do this. You'll need 10.3 on the Mac and Windows XP with a FireWire card (and likely, a 6 pin to 6 pin FireWire cable):
Make a new network location in System Prefs (Network Port Configurations -> New, FireWire). I called mine "Direct Connection (FireWire)."
Set the location to have a manual IP address; I choose 10.0.0.1 with a subnet of 255.255.255.0.
Disable all of the other ports on the Mac; i.e., only have FireWire enabled.
Turn on FTP Sharing in the Sharing system pref (in my experience, only this yields reliable, fast transfers).
On the PC, right-click on My Network Places, go to Properties, and right-click on LAN and choose Properties. Change the IP address to 10.0.0.2, and the subnet to 255.255.255.0.
Connect the two computers via the cable directly.
On the PC, open up your FTP client and go to 10.0.0.1/your short username. I suggest using Active mode rather than Passive as the latter always times out.
I copied 1.1 GB of data last night in about three minutes; the transfer speed held steady at a speedy 5 MB/sec! Just remember to change the Location on the Mac and settings on the PC back to what they were when you were done.
If you need to do networked backups on Mac OS X systems 10.2 and above, it is possible to use NFS mounts. Open NetInfo Manager (in /Applications -> Utilities) and create a new folder under mounts, then include the following properties:
opts : -P -c
type : nfs
dir : /users/username/folder
name : server.domain:/path/to/the/export/dir
Make sure the server allows NFS mounts and that the directory in the user's home is created before setting up the mount. The only problem is that the find command won't work on the NFS mount.