Copyright (c) 1999, Boris Popov All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other...
NAMEef - pseudo-device driver providing support for multiple Ethernet frame types
DESCRIPTIONThe sysctl Cm net.inet.tcp.syncookies pseudo-device driver clones each Ethernet type device with four additional interfaces. Each of them is capable to send or receive only one predefined frame type.
Names for the new interfaces are created by adding a fN suffix to an existing device name. Where N is a device unit which can have one of the following values:
0 interface with an Ethernet_II frame 1 interface with a Novell Ethernet_802.3 frame 2 interface with an Ethernet_802.2 frame 3 interface with an Ethernet_802.2/SNAP frame support.
For example, device ed0 will be populated with four devices: ed0f0 ed0f1 ed0f2 and ed0f3
After that, each device can be configured as usual:
# ifconfig ed0f1 ipx 0x105This will configure IPX protocol with network number 0x105 and Ethernet_802.3 frame type.
Please note that it is impossible to configure the IPX protocol on the parent ed0 device after the if_ef.ko driver has been loaded.
If the parent interface is not configured for any other protocol (IP for example), subinterfaces will not function. To avoid that, the parent interface should be manually marked as ``up''
# ifconfig ed0 up
EXAMPLESThe sysctl Cm net.inet.tcp.syncookies driver can be loaded via the loader.conf5 file:
In this case, ordinary interface configuration commands can be used in the rc.conf5 file:
network_interfaces="ed2 lo0 tun0 ed2f0 ed2f1"