A few solutions available work by watching packets leaving a network,
pulling data out of them, filtering based on that data, then injecting
new packets onto the network in order to intercept the packets coming back
into the network. This can be effective, but kind of makes the network
administrator side of me queasy.
Next: URL Databases