diff --git a/EduNetworkBuilder/NetTestEditor.cs b/EduNetworkBuilder/NetTestEditor.cs
index d02b7f8..470eac1 100644
--- a/EduNetworkBuilder/NetTestEditor.cs
+++ b/EduNetworkBuilder/NetTestEditor.cs
@@ -226,6 +226,10 @@ namespace EduNetworkBuilder
                 {
                     cbDest.Items.Add(NB.Translate("_All"));
                 }
+                else if (ToEdit.TheTest == NetTestType.DeviceIsBad)
+                {
+                    cbDest.Items.Add(ToEdit.sHost);
+                }
                 else if (ToEdit.TheTest == NetTestType.LockDHCP)
                 {
                     //return all the dhcp ranges
diff --git a/EduNetworkBuilder/NetworkCard.cs b/EduNetworkBuilder/NetworkCard.cs
index 2399eb9..70e5c7e 100644
--- a/EduNetworkBuilder/NetworkCard.cs
+++ b/EduNetworkBuilder/NetworkCard.cs
@@ -730,6 +730,17 @@ namespace EduNetworkBuilder
             mynet = NB.GetNetwork();
             nd = mynet.GetDeviceFromID(myID);
             
+            if(mynet.ItemHasTest(nd.hostname,NetTestType.DeviceIsBad))
+            {
+                if(!mynet.ItemTestIsComplete(nd.hostname, NetTestType.DeviceIsBad))
+                {
+                    //the device is busted and nonfunctional.  No response.
+                    tPacket.AddMessage(DebugLevel.info, "");
+                    tPacket.Tracking.Status = "";
+                    tPacket.MyStatus = PacketStatus.finished_failed;
+                }
+            }
+
             if (tPacket == null) return;
             tPacket.InboundNic = this; //track which nic we came in on.
             if (myNicType == NicType.port || myNicType == NicType.wport || (nd.IsWirelessForwarder() && (myNicType == NicType.wlan || 
diff --git a/EduNetworkBuilder/NetworkDevice.cs b/EduNetworkBuilder/NetworkDevice.cs
index e912b6b..1f32b7b 100644
--- a/EduNetworkBuilder/NetworkDevice.cs
+++ b/EduNetworkBuilder/NetworkDevice.cs
@@ -2878,7 +2878,8 @@ namespace EduNetworkBuilder
             DefaultGW = new IPAddress(NB.ZeroIPString);
             foreach(NetworkCard nic in NICs)
             {
-                nic.ClearIPs();
+                if(nic.GetNicType != NicType.port)
+                    nic.ClearIPs();
             }
         }