Ethernet Bridge

Ethernet Bridge is a small utility (driver and GUI configuration tool) for MAC level bridging of TCP/IP bound network interfaces. It is based on NDIS-hooking driver from Windows Packet Filter and supports Windows 2000/XP/2003. It can be used, an example, with OpenVPN in its bridging mode, especially with the server-end running on a Windows 2000 machine (Windows 2000 does not native bridging support which is only available since Windows XP).

System Requirements

Windows NT 4.0 Windows XP x86
Windows 2000 Widows Server 2003 x86

Open Source Ethernet Bridge application for modern Windows versions (up to Windows Server 2016) can be obtained from GitHub. Please note that it requires Windows Packet Filter installed.

How it works

Ethernet Bridge is based on kernel mode NDIS-hooking driver from Windows Packet Filter and implements bridging on the MAC level (below TCP/IP protocol). All the functional code works completely in kernel mode, user mode configuration application is responsible only for adding/removing network adapters to/from the bridge.

Download

Ethernet Bridge (x86 build) 2.0 20.02.2006 0.5MB Download

How to install

Unzip and run the installer. You will have to reboot the system after the installation.

How to use

In order to configure and start bridging you have to run bridge_cfg.exe. After choosing bridged adapters you can shutdown bridge_cfg.exe, having it running is not necessary since the configuration is completed. If you disabled/enabled any network adapters or installed any additional ones without reboot and want to add them to the bridge you may need to run bridge_cfg.exe again.

Something like this is usually seen after bridge_cfg.exe is started for the first time
Ethernet Bridge 1
On the next screenshot Local Area Connection and Local Area Connection are bridged
Ethernet Bridge 2
If you reboot, then you have to configure the bridge again, saving settings is not supported. However, if you need to start bridging from the script (running during the system boot, an example) you can use simple command line application bridge_cmd.exe which can be found in the installation directory (bin). If started without parameters, it lists the available Ethernet interfaces with the short information about each. The example of its output is below:

The following Ethernet interfaces are available to MSTCP:

DEVICE{7D2E629A-9DDA-4B1A-989A-1931CAB0BB7A}
Relates to: Local Area Connection 2
Current MAC: 0050BF9BF8BB
Medium: 0x00000000
Current MTU: 1500
Current bridge status = NOT BRIDGED

DEVICE{24DED96F-A7E9-4382-9556-F6F0CDCDFDC0}
Relates to: Local Area Connection
Current MAC: 00508D5F3673
Medium: 0x00000000
Current MTU: 1500
Current bridge status = NOT BRIDGED

In order to bridge the chosen interfaces you have to specify all of them in the command line. The command below turns on bridging for the both interfaces listed above:

bridge_cmd.exe DEVICE{7D2E629A-9DDA-4B1A-989A-1931CAB0BB7A} DEVICE{24DED96F-A7E9-4382-9556-F6F0CDCDFDC0}

In the command line you can specify internal network interface names (like “DEVICE{24DED96F-A7E9-4382-9556-F6F0CDCDFDC0}”), local area connection name like it is displayed in the Network Connections applet (like “Local Area Connection”) or even name prefixes (in this case bridging will be enabled for all adapters with the specified prefix, an example specifying “” as parameter will turn on bridging for all available network interfaces). Using bridge_cmd you can turn on bridging automatically during the system boot, an example, using SrvAny or any similar tool.

Price & licensing

Freeware for private (non commercial), or educational (including non-profit organization) use.

The source code for the Ethernet Bridge is available to WinpkFilter Source Code licensees free of charge. If your WinpkFilter Source Code license is valid and you want to get the Ethernet Bridge source code, then just contact us by e-mail to support@ntkernel.com.

Disclaimer

Ethernet Bridge software is supplied AS-IS, without warranties of any kind.