Because I develop Software Defined Radio (SDR) software, I have occasion to connect, and disconnect, various network devices to my wired network in order to test them all day long. Most of the SDRs are designed to configure using DHCP, or can be convinced to do so. That saves some fooling around, and is a good thing. However, my network is extensive, devices are always being moved around, WiFi devices arriving and leaving, and so once the SDRs are assigned an IP, I have to go hunt them down. It was annoying that they’re always showing up somewhere different.
However, my Mac Pro had an unused second ethernet port sitting. right. there. Hmmm. So…
My other network port is on our 192.168.1.x network; so ideally, this would be on some other range, giving me a double bonus: Consistent, yet auotmatic and worry-free configuration, and removal of some high bandwidth traffic from the LAN in general use.
Long story short, it worked. I dug into things until I managed to get OS X’s DHCP server running on that previously unused port, constrained the server’s DHCP address range to be from 192.168.10.100 to 192.168.10.100, or in other words, yes, it serves up a DHCP address, but that’s the only one it will give out.
This works extremely well. I’ll show you the system file I had to edit, and the network settings for the 2nd ethernet port, and hopefully, you’ll be able to duplicate this if you find you have a need or an interest.
First, create the bootpd.plist file in /etc:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>bootp_enabled</key> <false/> <key>detect_other_dhcp_server</key> <integer>1</integer> <key>dhcp_enabled</key> <array> <string>en1</string> </array> <key>reply_threshold_seconds</key> <integer>0</integer> <key>Subnets</key> <array> <dict> <key>allocate</key> <true/> <key>lease_max</key> <integer>86400</integer> <key>lease_min</key> <integer>86400</integer> <key>name</key> <string>192.168.10</string> <key>net_address</key> <string>192.168.10.0</string> <key>net_mask</key> <string>255.255.255.0</string> <key>net_range</key> <array> <string>192.168.10.100</string> <string>192.168.10.100</string> </array> </dict> </array> </dict> </plist>
Second, configure the 2nd ethernet port on the mac pro this way:
IP: 192.168.10.1 NETMASK: 255.255.255.0 ROUTER: 192.168.10.1 DNS: 220.127.116.11,18.104.22.168
Third, plug in your DHCP device, and in the Prefs pane, the ETH port should show as green (active.)
This works in both 10.6.8 and 10.12.3, so I’m thinking it probably works in the OS versions in between as well.