DNS servers aren't specific to network?
How can I set up my DNS servers to be configured differently for each wireless network?


Set and Change in Network Preferences

You can set your own custom DNS settings on a location basis by defining a "Location" in Network Preferences



You would then enter your preferred DNS settings (click "Advanced") under the DNS tab:



After you create set the configuration to your liking, you can call it up by returning to this preferences page and just selecting the location of your choice.

Or...

You can switch from the directly from Apple Menu ().  Just choose "Location" and select the location you want



Switch using command Line

For a quicker way, you can switch using the command networksetup.  So, to switch to a profile you have already created called "School" your command would be:

networksetup -switchlocation School


Bonus footage...

You could create small bash scripts with the command pre populated and placed (or linked) on your desktop.

#!/bin/bash
#Script to set the location to School

networksetup -switchlocation School
exit


Name it something meaningful like school.sh or school.command (or even just school).  Make it executable by issuing the command chmod +x /path/to/school.command (or whatever you called it).  Make another for Home, Work, In-Laws, or wherever.  When you double click on it, it will change the network location and your preset settings.

Caveat

If your organization (like your school) blocks outside DNS servers and traffic limiting it to the DNS servers they specify, you won't be able to override them.