I can tell you how I do that on a Linux box.
Wireless LAN is subnet 192.168.0.0 netmask 255.255.255.0
Fixed LAN is subnet 192.168.1.0 netmask 255.255.255.0
Wireless ADSL modem with address 192.168.0.1 acts as DHCP server for 192.168.0.0
A linux box with fixed connection (eth0) address 192.168.1.1 acts as DHCP server for 192.168.1.0
This box also has a wireless connection (wlan0) address 192.168.0.4 and acts as a gateway between the subnets.
The routing table on the linux box is
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.1 * 255.255.255.255 UH 0 0 0 wlan0
192.168.1.0 * 255.255.255.0 U 1 0 0 eth0
192.168.0.0 * 255.255.255.0 U 2 0 0 wlan0
default 192.168.0.1 0.0.0.0 UG 0 0 0 wlan0
The route command is used to manipulate the routing table, e.g.
route del default # deletes the default route
route add -net 192.168.0.1 netmask 255.255.255.255 dev wlan0
route add default gw 192.168.0.1 # adds the default route
The wireless ADSL router has a static route added
destination 192.168.1.0
mask 255.255.255.0
gateway 192.168.0.4
On my Linux box packet forwarding between subnets is disabled by default.
To enable forwarding (to allow the subnets to talk to each other) use
sysctl -w net.ipv4.ip_forward=1
You probably have to do something pretty similar on your Mac.
I'm not a network guy so have no idea if what I do is the "proper" way.
eta:typos
Edited by deleted (Fri 17-Jun-11 15:58:43)