New loopback device module does not show trace in wiresharkModule Stacking in Linux device driversRmmod...

Employer wants to use my work email account after I quit, is this legal under German law? Is this a GDPR waiver?

Smooth Julia set for quadratic polynomials

Story-based adventure with functions and relationships

Using “sparkling” as a diminutive of “spark” in a poem

How to append a matrix element by element

Would a two-seat light aircaft with a landing speed of 20 knots and a top speed of 180 knots be technically possible?

Distance Matrix (plugin) - QGIS

A player is constantly pestering me about rules, what do I do as a DM?

What happens when your group is victim of a surprise attack but you can't be surprised?

Is it damaging to turn off a small fridge for two days every week?

What do you call a weak person's act of taking on bigger opponents?

No IMPLICIT_CONVERSION warning in this query plan

How can I deal with a coworker killed on the job

First-year PhD giving a talk among well-established researchers in the field

Links to webpages in books

Why do some professors with PhDs leave their professorships to teach high school?

Change the boot order with no option in UEFI settings

Inverse-quotes-quine

Can ADFS connect to other SSO services?

How can I convince my reader that I will not use a certain trope?

What are the penalties for overstaying in USA?

What is the legal status of travelling with (unprescribed) methadone in your carry-on?

ては's role in this 「追いかけては来ないでしょう」

Why doesn't a marching band have strings?



New loopback device module does not show trace in wireshark


Module Stacking in Linux device driversRmmod module reappeared after plugging back deviceinsmod: ERROR: could not insert module 8188eu.ko: Invalid module formatintel_agp kernel module not foundKernel not recognizing new devices from DKMS module?OpenBSD: Defining a new loopback interfaceIs it possible to put a real IP on a loopback device?Persistent module loading not workingDoes “loopback” in a loopback file mean the same as in loopback IP address?Trying to make loopback device as Alsa-to-Jack bridge






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}







0















I am trying to write a network device driver that can duplicate the functionality of the loopback device. I modified the code available at the link. I am testing on Linux 4.8. I removed code related to stats and loopback registration with network namespace. For this variable, I couldn't find the definition, so for now its removed.



/* testlo.c */

#include <linux/kernel.h>
#include <linux/jiffies.h>
#include <linux/module.h>
#include <linux/interrupt.h>
#include <linux/fs.h>
#include <linux/types.h>
#include <linux/string.h>
#include <linux/socket.h>
#include <linux/errno.h>
#include <linux/fcntl.h>
#include <linux/in.h>

#include <asm/uaccess.h>
#include <asm/io.h>

#include <linux/inet.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/ethtool.h>
#include <net/sock.h>
#include <net/checksum.h>
#include <linux/if_ether.h> /* For the statistics structure. */
#include <linux/if_arp.h> /* For ARPHRD_ETHER */
#include <linux/ip.h>
#include <linux/tcp.h>
#include <linux/percpu.h>
#include <net/net_namespace.h>
#include <linux/u64_stats_sync.h>

/*
* The higher levels take care of making this non-reentrant (it's
* called with bh's disabled).
*/
netdev_tx_t loopback_xmit(struct sk_buff *skb,
struct net_device *dev)
{
//struct pcpu_lstats *lb_stats;
int len;

skb_orphan(skb);

/* Before queueing this packet to netif_rx(),
* make sure dst is refcounted.
*/
skb_dst_force(skb);

skb->protocol = eth_type_trans(skb, dev);

len = skb->len;
if (likely(netif_rx(skb) == NET_RX_SUCCESS)) { }

printk("Received packet at device driver n");

return NETDEV_TX_OK;
}

u32 always_on(struct net_device *dev)
{
return 1;
}

const struct ethtool_ops loopback_ethtool_ops = {
.get_link = always_on,
};

int loopback_dev_init(struct net_device *dev)
{
return 0;
}

void loopback_dev_free(struct net_device *dev)
{
free_netdev(dev);
}

const struct net_device_ops loopback_ops = {
.ndo_init = loopback_dev_init,
.ndo_start_xmit= loopback_xmit,
.ndo_set_mac_address = eth_mac_addr,
};

/*
* The loopback device is special. There is only one instance
* per network namespace.
*/
void loopback_setup(struct net_device *dev)
{
dev->mtu = 64 * 1024;
dev->hard_header_len = ETH_HLEN; /* 14 */
dev->addr_len = ETH_ALEN; /* 6 */
dev->type = ARPHRD_LOOPBACK; /* 0x0001*/
dev->flags = IFF_LOOPBACK;
dev->priv_flags |= IFF_LIVE_ADDR_CHANGE | IFF_NO_QUEUE;
netif_keep_dst(dev);
dev->hw_features = NETIF_F_GSO_SOFTWARE;
dev->features = NETIF_F_SG | NETIF_F_FRAGLIST
| NETIF_F_GSO_SOFTWARE
| NETIF_F_HW_CSUM
| NETIF_F_RXCSUM
| NETIF_F_SCTP_CRC
| NETIF_F_HIGHDMA
| NETIF_F_LLTX
| NETIF_F_NETNS_LOCAL
| NETIF_F_VLAN_CHALLENGED
| NETIF_F_LOOPBACK;
dev->ethtool_ops = &loopback_ethtool_ops;
dev->netdev_ops = &loopback_ops;
dev->destructor = loopback_dev_free;
}

struct net_device *global_dev;

/* Setup and register the loopback device. */
int init_dev (void)
{
struct net_device *dev;
int err;

printk ("Init Modulen");

err = -ENOMEM;
dev = alloc_netdev(0, "testlo", NET_NAME_UNKNOWN, loopback_setup);
if (!dev)
goto out;

err = register_netdev(dev);
if (err)
goto out_free_netdev;

BUG_ON(dev->ifindex != LOOPBACK_IFINDEX);
global_dev = dev;

return 0;

out_free_netdev:
free_netdev(dev);
out:
return err;
}

void cleanup (void)
{
printk ("Cleaning Up Modulen");
unregister_netdev (global_dev);
return;
}

module_init (init_dev);
module_exit (cleanup);


Makefile:



obj-m += testlo.o

all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean


Once I compile the code and insert the kernel module, I can see my new device (testlo) in the list from ip a. I can set the device state to up and assign it an IP address. However, the code's function loopback_xmit() doesn't get triggered if I try to ping that IP (I do see ping responses). If I check in wireshark, there is no trace if I ping the new device's IP. In the default loopback device (lo), pinging 127.0.0.1 shows a trace in wireshark.



Can someone tell what is missing in the code to make it behave like a loopback device ?










share|improve this question





























    0















    I am trying to write a network device driver that can duplicate the functionality of the loopback device. I modified the code available at the link. I am testing on Linux 4.8. I removed code related to stats and loopback registration with network namespace. For this variable, I couldn't find the definition, so for now its removed.



    /* testlo.c */

    #include <linux/kernel.h>
    #include <linux/jiffies.h>
    #include <linux/module.h>
    #include <linux/interrupt.h>
    #include <linux/fs.h>
    #include <linux/types.h>
    #include <linux/string.h>
    #include <linux/socket.h>
    #include <linux/errno.h>
    #include <linux/fcntl.h>
    #include <linux/in.h>

    #include <asm/uaccess.h>
    #include <asm/io.h>

    #include <linux/inet.h>
    #include <linux/netdevice.h>
    #include <linux/etherdevice.h>
    #include <linux/skbuff.h>
    #include <linux/ethtool.h>
    #include <net/sock.h>
    #include <net/checksum.h>
    #include <linux/if_ether.h> /* For the statistics structure. */
    #include <linux/if_arp.h> /* For ARPHRD_ETHER */
    #include <linux/ip.h>
    #include <linux/tcp.h>
    #include <linux/percpu.h>
    #include <net/net_namespace.h>
    #include <linux/u64_stats_sync.h>

    /*
    * The higher levels take care of making this non-reentrant (it's
    * called with bh's disabled).
    */
    netdev_tx_t loopback_xmit(struct sk_buff *skb,
    struct net_device *dev)
    {
    //struct pcpu_lstats *lb_stats;
    int len;

    skb_orphan(skb);

    /* Before queueing this packet to netif_rx(),
    * make sure dst is refcounted.
    */
    skb_dst_force(skb);

    skb->protocol = eth_type_trans(skb, dev);

    len = skb->len;
    if (likely(netif_rx(skb) == NET_RX_SUCCESS)) { }

    printk("Received packet at device driver n");

    return NETDEV_TX_OK;
    }

    u32 always_on(struct net_device *dev)
    {
    return 1;
    }

    const struct ethtool_ops loopback_ethtool_ops = {
    .get_link = always_on,
    };

    int loopback_dev_init(struct net_device *dev)
    {
    return 0;
    }

    void loopback_dev_free(struct net_device *dev)
    {
    free_netdev(dev);
    }

    const struct net_device_ops loopback_ops = {
    .ndo_init = loopback_dev_init,
    .ndo_start_xmit= loopback_xmit,
    .ndo_set_mac_address = eth_mac_addr,
    };

    /*
    * The loopback device is special. There is only one instance
    * per network namespace.
    */
    void loopback_setup(struct net_device *dev)
    {
    dev->mtu = 64 * 1024;
    dev->hard_header_len = ETH_HLEN; /* 14 */
    dev->addr_len = ETH_ALEN; /* 6 */
    dev->type = ARPHRD_LOOPBACK; /* 0x0001*/
    dev->flags = IFF_LOOPBACK;
    dev->priv_flags |= IFF_LIVE_ADDR_CHANGE | IFF_NO_QUEUE;
    netif_keep_dst(dev);
    dev->hw_features = NETIF_F_GSO_SOFTWARE;
    dev->features = NETIF_F_SG | NETIF_F_FRAGLIST
    | NETIF_F_GSO_SOFTWARE
    | NETIF_F_HW_CSUM
    | NETIF_F_RXCSUM
    | NETIF_F_SCTP_CRC
    | NETIF_F_HIGHDMA
    | NETIF_F_LLTX
    | NETIF_F_NETNS_LOCAL
    | NETIF_F_VLAN_CHALLENGED
    | NETIF_F_LOOPBACK;
    dev->ethtool_ops = &loopback_ethtool_ops;
    dev->netdev_ops = &loopback_ops;
    dev->destructor = loopback_dev_free;
    }

    struct net_device *global_dev;

    /* Setup and register the loopback device. */
    int init_dev (void)
    {
    struct net_device *dev;
    int err;

    printk ("Init Modulen");

    err = -ENOMEM;
    dev = alloc_netdev(0, "testlo", NET_NAME_UNKNOWN, loopback_setup);
    if (!dev)
    goto out;

    err = register_netdev(dev);
    if (err)
    goto out_free_netdev;

    BUG_ON(dev->ifindex != LOOPBACK_IFINDEX);
    global_dev = dev;

    return 0;

    out_free_netdev:
    free_netdev(dev);
    out:
    return err;
    }

    void cleanup (void)
    {
    printk ("Cleaning Up Modulen");
    unregister_netdev (global_dev);
    return;
    }

    module_init (init_dev);
    module_exit (cleanup);


    Makefile:



    obj-m += testlo.o

    all:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

    clean:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean


    Once I compile the code and insert the kernel module, I can see my new device (testlo) in the list from ip a. I can set the device state to up and assign it an IP address. However, the code's function loopback_xmit() doesn't get triggered if I try to ping that IP (I do see ping responses). If I check in wireshark, there is no trace if I ping the new device's IP. In the default loopback device (lo), pinging 127.0.0.1 shows a trace in wireshark.



    Can someone tell what is missing in the code to make it behave like a loopback device ?










    share|improve this question

























      0












      0








      0








      I am trying to write a network device driver that can duplicate the functionality of the loopback device. I modified the code available at the link. I am testing on Linux 4.8. I removed code related to stats and loopback registration with network namespace. For this variable, I couldn't find the definition, so for now its removed.



      /* testlo.c */

      #include <linux/kernel.h>
      #include <linux/jiffies.h>
      #include <linux/module.h>
      #include <linux/interrupt.h>
      #include <linux/fs.h>
      #include <linux/types.h>
      #include <linux/string.h>
      #include <linux/socket.h>
      #include <linux/errno.h>
      #include <linux/fcntl.h>
      #include <linux/in.h>

      #include <asm/uaccess.h>
      #include <asm/io.h>

      #include <linux/inet.h>
      #include <linux/netdevice.h>
      #include <linux/etherdevice.h>
      #include <linux/skbuff.h>
      #include <linux/ethtool.h>
      #include <net/sock.h>
      #include <net/checksum.h>
      #include <linux/if_ether.h> /* For the statistics structure. */
      #include <linux/if_arp.h> /* For ARPHRD_ETHER */
      #include <linux/ip.h>
      #include <linux/tcp.h>
      #include <linux/percpu.h>
      #include <net/net_namespace.h>
      #include <linux/u64_stats_sync.h>

      /*
      * The higher levels take care of making this non-reentrant (it's
      * called with bh's disabled).
      */
      netdev_tx_t loopback_xmit(struct sk_buff *skb,
      struct net_device *dev)
      {
      //struct pcpu_lstats *lb_stats;
      int len;

      skb_orphan(skb);

      /* Before queueing this packet to netif_rx(),
      * make sure dst is refcounted.
      */
      skb_dst_force(skb);

      skb->protocol = eth_type_trans(skb, dev);

      len = skb->len;
      if (likely(netif_rx(skb) == NET_RX_SUCCESS)) { }

      printk("Received packet at device driver n");

      return NETDEV_TX_OK;
      }

      u32 always_on(struct net_device *dev)
      {
      return 1;
      }

      const struct ethtool_ops loopback_ethtool_ops = {
      .get_link = always_on,
      };

      int loopback_dev_init(struct net_device *dev)
      {
      return 0;
      }

      void loopback_dev_free(struct net_device *dev)
      {
      free_netdev(dev);
      }

      const struct net_device_ops loopback_ops = {
      .ndo_init = loopback_dev_init,
      .ndo_start_xmit= loopback_xmit,
      .ndo_set_mac_address = eth_mac_addr,
      };

      /*
      * The loopback device is special. There is only one instance
      * per network namespace.
      */
      void loopback_setup(struct net_device *dev)
      {
      dev->mtu = 64 * 1024;
      dev->hard_header_len = ETH_HLEN; /* 14 */
      dev->addr_len = ETH_ALEN; /* 6 */
      dev->type = ARPHRD_LOOPBACK; /* 0x0001*/
      dev->flags = IFF_LOOPBACK;
      dev->priv_flags |= IFF_LIVE_ADDR_CHANGE | IFF_NO_QUEUE;
      netif_keep_dst(dev);
      dev->hw_features = NETIF_F_GSO_SOFTWARE;
      dev->features = NETIF_F_SG | NETIF_F_FRAGLIST
      | NETIF_F_GSO_SOFTWARE
      | NETIF_F_HW_CSUM
      | NETIF_F_RXCSUM
      | NETIF_F_SCTP_CRC
      | NETIF_F_HIGHDMA
      | NETIF_F_LLTX
      | NETIF_F_NETNS_LOCAL
      | NETIF_F_VLAN_CHALLENGED
      | NETIF_F_LOOPBACK;
      dev->ethtool_ops = &loopback_ethtool_ops;
      dev->netdev_ops = &loopback_ops;
      dev->destructor = loopback_dev_free;
      }

      struct net_device *global_dev;

      /* Setup and register the loopback device. */
      int init_dev (void)
      {
      struct net_device *dev;
      int err;

      printk ("Init Modulen");

      err = -ENOMEM;
      dev = alloc_netdev(0, "testlo", NET_NAME_UNKNOWN, loopback_setup);
      if (!dev)
      goto out;

      err = register_netdev(dev);
      if (err)
      goto out_free_netdev;

      BUG_ON(dev->ifindex != LOOPBACK_IFINDEX);
      global_dev = dev;

      return 0;

      out_free_netdev:
      free_netdev(dev);
      out:
      return err;
      }

      void cleanup (void)
      {
      printk ("Cleaning Up Modulen");
      unregister_netdev (global_dev);
      return;
      }

      module_init (init_dev);
      module_exit (cleanup);


      Makefile:



      obj-m += testlo.o

      all:
      make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

      clean:
      make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean


      Once I compile the code and insert the kernel module, I can see my new device (testlo) in the list from ip a. I can set the device state to up and assign it an IP address. However, the code's function loopback_xmit() doesn't get triggered if I try to ping that IP (I do see ping responses). If I check in wireshark, there is no trace if I ping the new device's IP. In the default loopback device (lo), pinging 127.0.0.1 shows a trace in wireshark.



      Can someone tell what is missing in the code to make it behave like a loopback device ?










      share|improve this question














      I am trying to write a network device driver that can duplicate the functionality of the loopback device. I modified the code available at the link. I am testing on Linux 4.8. I removed code related to stats and loopback registration with network namespace. For this variable, I couldn't find the definition, so for now its removed.



      /* testlo.c */

      #include <linux/kernel.h>
      #include <linux/jiffies.h>
      #include <linux/module.h>
      #include <linux/interrupt.h>
      #include <linux/fs.h>
      #include <linux/types.h>
      #include <linux/string.h>
      #include <linux/socket.h>
      #include <linux/errno.h>
      #include <linux/fcntl.h>
      #include <linux/in.h>

      #include <asm/uaccess.h>
      #include <asm/io.h>

      #include <linux/inet.h>
      #include <linux/netdevice.h>
      #include <linux/etherdevice.h>
      #include <linux/skbuff.h>
      #include <linux/ethtool.h>
      #include <net/sock.h>
      #include <net/checksum.h>
      #include <linux/if_ether.h> /* For the statistics structure. */
      #include <linux/if_arp.h> /* For ARPHRD_ETHER */
      #include <linux/ip.h>
      #include <linux/tcp.h>
      #include <linux/percpu.h>
      #include <net/net_namespace.h>
      #include <linux/u64_stats_sync.h>

      /*
      * The higher levels take care of making this non-reentrant (it's
      * called with bh's disabled).
      */
      netdev_tx_t loopback_xmit(struct sk_buff *skb,
      struct net_device *dev)
      {
      //struct pcpu_lstats *lb_stats;
      int len;

      skb_orphan(skb);

      /* Before queueing this packet to netif_rx(),
      * make sure dst is refcounted.
      */
      skb_dst_force(skb);

      skb->protocol = eth_type_trans(skb, dev);

      len = skb->len;
      if (likely(netif_rx(skb) == NET_RX_SUCCESS)) { }

      printk("Received packet at device driver n");

      return NETDEV_TX_OK;
      }

      u32 always_on(struct net_device *dev)
      {
      return 1;
      }

      const struct ethtool_ops loopback_ethtool_ops = {
      .get_link = always_on,
      };

      int loopback_dev_init(struct net_device *dev)
      {
      return 0;
      }

      void loopback_dev_free(struct net_device *dev)
      {
      free_netdev(dev);
      }

      const struct net_device_ops loopback_ops = {
      .ndo_init = loopback_dev_init,
      .ndo_start_xmit= loopback_xmit,
      .ndo_set_mac_address = eth_mac_addr,
      };

      /*
      * The loopback device is special. There is only one instance
      * per network namespace.
      */
      void loopback_setup(struct net_device *dev)
      {
      dev->mtu = 64 * 1024;
      dev->hard_header_len = ETH_HLEN; /* 14 */
      dev->addr_len = ETH_ALEN; /* 6 */
      dev->type = ARPHRD_LOOPBACK; /* 0x0001*/
      dev->flags = IFF_LOOPBACK;
      dev->priv_flags |= IFF_LIVE_ADDR_CHANGE | IFF_NO_QUEUE;
      netif_keep_dst(dev);
      dev->hw_features = NETIF_F_GSO_SOFTWARE;
      dev->features = NETIF_F_SG | NETIF_F_FRAGLIST
      | NETIF_F_GSO_SOFTWARE
      | NETIF_F_HW_CSUM
      | NETIF_F_RXCSUM
      | NETIF_F_SCTP_CRC
      | NETIF_F_HIGHDMA
      | NETIF_F_LLTX
      | NETIF_F_NETNS_LOCAL
      | NETIF_F_VLAN_CHALLENGED
      | NETIF_F_LOOPBACK;
      dev->ethtool_ops = &loopback_ethtool_ops;
      dev->netdev_ops = &loopback_ops;
      dev->destructor = loopback_dev_free;
      }

      struct net_device *global_dev;

      /* Setup and register the loopback device. */
      int init_dev (void)
      {
      struct net_device *dev;
      int err;

      printk ("Init Modulen");

      err = -ENOMEM;
      dev = alloc_netdev(0, "testlo", NET_NAME_UNKNOWN, loopback_setup);
      if (!dev)
      goto out;

      err = register_netdev(dev);
      if (err)
      goto out_free_netdev;

      BUG_ON(dev->ifindex != LOOPBACK_IFINDEX);
      global_dev = dev;

      return 0;

      out_free_netdev:
      free_netdev(dev);
      out:
      return err;
      }

      void cleanup (void)
      {
      printk ("Cleaning Up Modulen");
      unregister_netdev (global_dev);
      return;
      }

      module_init (init_dev);
      module_exit (cleanup);


      Makefile:



      obj-m += testlo.o

      all:
      make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

      clean:
      make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean


      Once I compile the code and insert the kernel module, I can see my new device (testlo) in the list from ip a. I can set the device state to up and assign it an IP address. However, the code's function loopback_xmit() doesn't get triggered if I try to ping that IP (I do see ping responses). If I check in wireshark, there is no trace if I ping the new device's IP. In the default loopback device (lo), pinging 127.0.0.1 shows a trace in wireshark.



      Can someone tell what is missing in the code to make it behave like a loopback device ?







      networking kernel-modules loopback






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 38 mins ago









      JakeJake

      5798 silver badges22 bronze badges




      5798 silver badges22 bronze badges






















          0






          active

          oldest

          votes














          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "106"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f526324%2fnew-loopback-device-module-does-not-show-trace-in-wireshark%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Unix & Linux Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f526324%2fnew-loopback-device-module-does-not-show-trace-in-wireshark%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Taj Mahal Inhaltsverzeichnis Aufbau | Geschichte | 350-Jahr-Feier | Heutige Bedeutung | Siehe auch |...

          Baia Sprie Cuprins Etimologie | Istorie | Demografie | Politică și administrație | Arii naturale...

          Nicolae Petrescu-Găină Cuprins Biografie | Opera | In memoriam | Varia | Controverse, incertitudini...