I suggest you to give a look to the following two packages:
Description: configuration daemon for ethernet devices
ifplugd is a daemon which will automatically configure your ethernet device
when a cable is plugged in and automatically de-configure it if the cable is
pulled out. This is useful on laptops with onboard network adapters, since it
will only configure the interface when a cable is really connected. Features
* syslog support
* Multiple ethernet interface support
* Uses Debian's native ifup/ifdown programs
* Small executable size and memory footprint
* Option to beep when the cable is unplugged or plugged
* Option to beep when the interface configuration succeeds or fails
* Can be configured to ignore short unplugged or plugged periods
* Configure WLAN devices (on detecting a successful association to an AP)
* Supports SIOCETHTOOL, SIOCGMIIREG and SIOCDEVPRIVATE for getting link status
* Compatibility mode for network devices which do not support cable detection
Description: network link monitor daemon
This daemon monitors the link status of network cards and configures
the network on plug- and un-plug-events.
It's similar to ifplugd, but uses NETLINK instead of regularly polling
the link status. This improves power-consumption with laptops, but does
not work with all network card.
I have used in the past the first of this, and it works well on cable unplug and replug, but I don't know if it work also in your situation that seems a little bit different.