Go to main content

man pages section 7: Device and Network Interfaces

Exit Print View

Updated: July 2017



vni - STREAMS virtual network interface driver


The vni pseudo device is a multi-threaded, loadable, clonable, STREAMS pseudo-device supporting the connectionless Data Link Provider Interface dlpi(7P) Style 2.

The vni device is a software-only interface and does not send or receive data. The device provides a DLPI upper interface that identifies itself to IP with a private media type. It can be configured via ipadm(1M) and can have IP addresses assigned to it, making aliases possible.

The vni pseudo device is particularly useful in hosting an IP address when used in conjunction with the 'usesrc' ipadm option (see ipadm(1M) for examples). The logical instances of the device can also be used to host addresses as an alternative to hosting them over the loopback interface.

Multicast is not supported on this device. More specifically, the following options return an error when used with an address specified on vni: IP_MULTICAST_IF, IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP, IPV6_MULTICAST_IF , IPV6_JOIN_GROUP, and IPV6_LEAVE_GROUP. In addition, broadcast is not supported.

Because there is no physical hardware configured below it, no traffic can be received through nor transmitted on a virtual interface. All packet transmission and reception is accomplished with existing physical interfaces and tunnels. Because applications that deal with packet transmission and reception (such as packet filters) cannot filter traffic on virtual interfaces, you cannot set up a packet filter on a virtual interface. Instead, you should configure the policy rules to apply to the physical interfaces and tunnels, and if necessary, use the virtual IP addresses themselves as part of the rule configuration. Also, note that the virtual interface cannot be part of an IP multipathing (IPMP) group.



64–bit ELF kernel driver

See Also

in.mpathd(1M), ipadm(1M), ip(7P), ip6(7P)