diff --git a/scripts/ifs_data.py b/scripts/ifs_data.py
index 119acdb..34263b3 100644
--- a/scripts/ifs_data.py
+++ b/scripts/ifs_data.py
@@ -72,40 +72,46 @@
     if_ipv4 = re.compile(r"^\s{4}inet\ .*$")
     # variable prototypes
     _ifs = {}
-    _if_name = None
+    _name = None
     # get the "ip a" output
     _ifs_raw = shell('ip a')
     for line in _ifs_raw.splitlines():
         _if_data = {}
         if if_start.match(line):
             _tmp = line.split(':')
-            _if_name = _tmp[1].strip()
+            _name = _tmp[1].strip()
+            _name = _name.split('@') if '@' in _name else [_name, ""]
+            _at = _name[1]
+            _name = _name[0]
             _if_options = _tmp[2].strip().split(' ')
-            _lower, _upper, _type = get_linked_devices(_if_name)
-            _if_data['order'] = _tmp[0]
+            _lower, _upper, _type = get_linked_devices(_name)
+            _if_data['if_index'] = _tmp[0]
+            _if_data['at'] = _at
             _if_data['mtu'], _if_options = cut_option("mtu", _if_options)
             _if_data['qlen'], _if_options = cut_option("qlen", _if_options)
             _if_data['state'], _if_options = cut_option("state", _if_options)
             _if_data['other'] = _if_options
             _if_data['ipv4'] = {}
-            _if_data['mac'] = {}
+            _if_data['link'] = {}
             _if_data['type'] = _type
             _if_data['upper'] = _upper
             _if_data['lower'] = _lower
-            _ifs[_if_name] = _if_data
+            _ifs[_name] = _if_data
         elif if_link.match(line):
-            if _if_name is None:
+            if _name is None:
                 continue
             else:
                 _tmp = line.strip().split(' ', 2)
                 _mac_addr = _tmp[1]
                 _options = _tmp[2].split(' ')
                 _brd, _options = cut_option("brd", _options)
-                _ifs[_if_name]['mac'][_mac_addr] = {}
-                _ifs[_if_name]['mac'][_mac_addr]['brd'] = _brd
-                _ifs[_if_name]['mac'][_mac_addr]['other'] = _options
+                _netnsid, _options = cut_option("link-netnsid", _options)
+                _ifs[_name]['link'][_mac_addr] = {}
+                _ifs[_name]['link'][_mac_addr]['brd'] = _brd
+                _ifs[_name]['link'][_mac_addr]['link-netnsid'] = _netnsid
+                _ifs[_name]['link'][_mac_addr]['other'] = _options
         elif if_ipv4.match(line):
-            if _if_name is None:
+            if _name is None:
                 continue
             else:
                 _tmp = line.strip().split(' ', 2)
@@ -113,9 +119,9 @@
                 _options = _tmp[2].split(' ')
                 _brd, _options = cut_option("brd", _options)
                 # TODO: Parse other options, mask, brd, etc...
-                _ifs[_if_name]['ipv4'][_ip] = {}
-                _ifs[_if_name]['ipv4'][_ip]['brd'] = _brd
-                _ifs[_if_name]['ipv4'][_ip]['other'] = _options
+                _ifs[_name]['ipv4'][_ip] = {}
+                _ifs[_name]['ipv4'][_ip]['brd'] = _brd
+                _ifs[_name]['ipv4'][_ip]['other'] = _options
 
     # Collect routes data and try to match it with network
     # Compile regexp for detecting default route
@@ -172,7 +178,7 @@
         print("{0:8} {1:30} {2:18} {3:19} {4:5} {5:4} {6}".format(
             ifs_data[_ifs[_idx]]['type'],
             _ifs[_idx],
-            ",".join(ifs_data[_ifs[_idx]]['mac'].keys()),
+            ",".join(ifs_data[_ifs[_idx]]['link'].keys()),
             ",".join(ifs_data[_ifs[_idx]]['ipv4'].keys()),
             ifs_data[_ifs[_idx]]['mtu'],
             ifs_data[_ifs[_idx]]['state'],
