diff --git a/scapy/arch/windows/__init__.py b/scapy/arch/windows/__init__.py
index f2861a0c2ab33980cc5aa0474c991aa79614f6b5..db30caba43ba03d79a5306a2a455503933b7fbaf 100755
--- a/scapy/arch/windows/__init__.py
+++ b/scapy/arch/windows/__init__.py
@@ -13,6 +13,7 @@ import subprocess as sp
 from glob import glob
 import tempfile
 
+import scapy
 from scapy.config import conf, ConfClass
 from scapy.error import Scapy_Exception, log_loading, log_runtime, warning
 from scapy.utils import atol, itom, inet_aton, inet_ntoa, PcapReader
@@ -459,7 +460,6 @@ class NetworkInterfaceDict(UserDict):
                 scapy.consts.LOOPBACK_INTERFACE = self.dev_from_name(
                     scapy.consts.LOOPBACK_NAME,
                 )
-            except:
                 pass
 
     def dev_from_name(self, name):
@@ -814,7 +814,7 @@ def route_add_loopback(routes=None, ipv6=False, iflist=None):
         if not conf.route.routes:
             return
     data = {}
-    data['name'] = LOOPBACK_NAME
+    data['name'] = scapy.consts.LOOPBACK_NAME
     data['description'] = "Loopback"
     data['win_index'] = -1
     data['guid'] = "{0XX00000-X000-0X0X-X00X-00XXXX000XXX}"
@@ -827,11 +827,11 @@ def route_add_loopback(routes=None, ipv6=False, iflist=None):
     # Remove all LOOPBACK_NAME routes
     for route in list(conf.route.routes):
         iface = route[3]
-        if iface.name == LOOPBACK_NAME:
+        if iface.name == scapy.consts.LOOPBACK_NAME:
             conf.route.routes.remove(route)
     # Remove LOOPBACK_NAME interface
     for devname, iface in IFACES.items():
-        if iface.name == LOOPBACK_NAME:
+        if iface.name == scapy.consts.LOOPBACK_NAME:
             IFACES.pop(devname)
     # Inject interface
     IFACES[data['guid']] = adapter
diff --git a/scapy/consts.py b/scapy/consts.py
index 9b31a71e9f53b2fffd038d1996a2d6a32c4fd995..ff6b771b55905142a33ae461fec6c350e437358c 100644
--- a/scapy/consts.py
+++ b/scapy/consts.py
@@ -68,12 +68,12 @@ if WINDOWS:
             LOOPBACK_NAME = "Microsoft Loopback Adapter"
     except ValueError:
         LOOPBACK_NAME = "Microsoft Loopback Adapter"
+    # Will be different on Windows
+    LOOPBACK_INTERFACE = None
 else:
     uname = os.uname()
     LOOPBACK_NAME = "lo" if LINUX else "lo0"
-
-# Will be different on Windows
-LOOPBACK_INTERFACE = LOOPBACK_NAME
+    LOOPBACK_INTERFACE = LOOPBACK_NAME
 
 def parent_function():
     return inspect.getouterframes(inspect.currentframe())
diff --git a/scapy/layers/l2.py b/scapy/layers/l2.py
index ddb9307dbc4b8ccc7dae82f738481943591658e2..3aa148adcdcb28f00ecff0742253caabc355e32f 100644
--- a/scapy/layers/l2.py
+++ b/scapy/layers/l2.py
@@ -11,6 +11,7 @@ from __future__ import absolute_import
 from __future__ import print_function
 import os, struct, time, socket
 
+import scapy
 from scapy.base_classes import Net
 from scapy.config import conf
 from scapy.data import *
@@ -21,7 +22,6 @@ from scapy.plist import SndRcvList
 from scapy.fields import *
 from scapy.sendrecv import srp, srp1, srpflood
 from scapy.arch import get_if_hwaddr
-from scapy.consts import LOOPBACK_INTERFACE
 from scapy.utils import inet_ntoa, inet_aton
 from scapy.error import warning
 if conf.route is None:
@@ -66,7 +66,7 @@ def getmacbyip(ip, chainCC=0):
     if (tmp[0] & 0xf0) == 0xe0: # mcast @
         return "01:00:5e:%.2x:%.2x:%.2x" % (tmp[1]&0x7f,tmp[2],tmp[3])
     iff,a,gw = conf.route.route(ip)
-    if ( (iff == LOOPBACK_INTERFACE) or (ip == conf.route.get_if_bcast(iff)) ):
+    if ( (iff == scapy.consts.LOOPBACK_INTERFACE) or (ip == conf.route.get_if_bcast(iff)) ):
         return "ff:ff:ff:ff:ff:ff"
     if gw != "0.0.0.0":
         ip = gw
diff --git a/scapy/route.py b/scapy/route.py
index 40a730774228045e57e48af9aad6d6a787868d75..411fc03c888a5f20be7318ff2c014478b1ec728a 100644
--- a/scapy/route.py
+++ b/scapy/route.py
@@ -8,7 +8,6 @@ Routing and handling of network interfaces.
 """
 
 from __future__ import absolute_import
-from scapy.consts import LOOPBACK_NAME, LOOPBACK_INTERFACE
 from scapy.utils import atol, ltoa, itom, pretty_routes
 from scapy.config import conf
 from scapy.error import Scapy_Exception, warning
@@ -153,13 +152,13 @@ class Route:
                 continue
             aa = atol(a)
             if aa == dst:
-                pathes.append((0xffffffff,(LOOPBACK_INTERFACE,a,"0.0.0.0")))
+                pathes.append((0xffffffff,(scapy.consts.LOOPBACK_INTERFACE,a,"0.0.0.0")))
             if (dst & m) == (d & m):
                 pathes.append((m,(i,a,gw)))
         if not pathes:
             if verbose:
                 warning("No route found (no default route?)")
-            return LOOPBACK_INTERFACE,"0.0.0.0","0.0.0.0"
+            return scapy.consts.LOOPBACK_INTERFACE,"0.0.0.0","0.0.0.0"
         # Choose the more specific route (greatest netmask).
         # XXX: we don't care about metrics
         pathes.sort(key=lambda x: x[0])
@@ -184,6 +183,6 @@ conf.route=Route()
 
 #XXX use "with"
 _betteriface = conf.route.route("0.0.0.0", verbose=0)[0]
-if ((_betteriface if (isinstance(_betteriface, six.string_types) or _betteriface is None) else _betteriface.name) != LOOPBACK_NAME):
+if ((_betteriface if (isinstance(_betteriface, six.string_types) or _betteriface is None) else _betteriface.name) != scapy.consts.LOOPBACK_NAME):
     conf.iface = _betteriface
 del(_betteriface)
diff --git a/scapy/route6.py b/scapy/route6.py
index fe433f33739ae59ae57fe2201472d18fec1eb085..d31412dfc9aad98577a800b91980aae945a899a1 100644
--- a/scapy/route6.py
+++ b/scapy/route6.py
@@ -18,12 +18,12 @@ Routing and network interface handling for IPv6.
 
 from __future__ import absolute_import
 import socket
+import scapy
 from scapy.config import conf
 from scapy.utils6 import *
 from scapy.arch import *
 from scapy.pton_ntop import *
 from scapy.error import warning, log_loading
-from scapy.consts import LOOPBACK_INTERFACE
 import scapy.modules.six as six
 
 
@@ -220,7 +220,7 @@ class Route6:
 
         if not pathes:
             warning("No route found for IPv6 destination %s (no default route?)" % dst)
-            return (LOOPBACK_INTERFACE, "::", "::")
+            return (scapy.consts.LOOPBACK_INTERFACE, "::", "::")
 
         # Sort with longest prefix first
         pathes.sort(reverse=True)
@@ -237,7 +237,7 @@ class Route6:
 
         if res == []:
             warning("Found a route for IPv6 destination '%s', but no possible source address." % dst)
-            return (LOOPBACK_INTERFACE, "::", "::")
+            return (scapy.consts.LOOPBACK_INTERFACE, "::", "::")
 
         # Symptom  : 2 routes with same weight (our weight is plen)
         # Solution :