Application to Automatically Map Network and Notify About Rogue Hosts?

Does any vendor make an application that passively listens to all ethernet
segments on a computer, and then notifies the administrator if any
unauthorized IP or ethernet Mac address shows up on any segment? You would
obviously need to feed into such an application the IPs and Mac addresses
that are authorized for your network. But when a contractor shows up or
someone plugs in a new computer, the administrator would know about it the
instant it happens.