AWG Blogs

  • Coding without IF statements - Found below linked article that provides tips on how to avoid using IF statements, with one of the benefits being readability. The tips largely are based o...
    1 day ago
  • Microservices - A species would be a combination of roles [DCI?], instead of being characterized as an animal, which would not necessarily be the best description. At a ...
    2 weeks ago
  • CoR compared to Pipe and Filter - Java World implies the pipes-and-filters architectural style described by Parnas Software systems often employ the equivalent of pipes (e.g., email filter...
    7 months ago
  • Getting ADB Working for SPH-M840 - Had a SPH-M840 Galaxy Ring Virgin Mobile 3G Android version 4.1.2, attempting to install apps from Android Studio failed to detect device. Installed SAMSUN...
    1 year ago
  • How to check if I have write permissions to an Oracle table - SELECT CASE WHEN COUNT(*) > 0 THEN 'YES' ELSE 'NO' END AS PERMISSIONS FROM ( SELECT privilege FROM ( select * from dba_tab_privs where (grantee = 'MY_USE...
    1 year ago
  • Flyweight vs Singleton - Implementations seems to be virtually identical, differing only in style, where the flyweight object is created and held by associated objects (containers:...
    2 years ago
  • init-param vs context-param - see http://javahash.com/difference-between-servlet-init-and-context-parameter/ for background. Gist: context-param variables are global and accessible thro...
    2 years ago
  • rbenv vs RVM - RVM is responsible not only for changing Ruby versions, but for installing rubies and managing gemsets, as well. ...Along with rbenv [to manage ruby versi...
    2 years ago

Wednesday, July 1, 2009

vtund Experimentation part 3 - Bridging

Picking up from "vtund Experimentation part 2" we are going to set up the bridge interface, which will bridge tap0 and eth1 as depicted in http://blog.kovyrin.net/2006/04/05/connecting-two-remote-local-networks-with-transparent-bridging/ (although there it's eth0).

On both server and client sever the vtund connection (if any) and kill the vtund process.

On the server:
in the lion config of vtund-server.conf, replace
"ifconfig "%% 10.1.0.1 netmask 255.255.255.0";
with the following lines:
ifconfig "%% up";
program "brctl addif br0 %%";
comment out the route command.
change the password (recommended)

On the client:
in the lion config of vtund-client.conf, replace
"ifconfig "%% 10.1.0.2 netmask 255.255.255.0";
with the following lines:
ifconfig "%% up";
program "brctl addif br0 %%";
change the password to same as server's (if changed on server).

On the server:
in /etc/network/interfaces
remove the eth1 ip configuration, except for the line
auto eth1 # to bring up eth1
Add the br0 ip configuration:
iface br0 inet static
address 192.168.100.99
netmask 255.255.255.0
bridge_ports eth1

On the client:
in /etc/network/interfaces
remove the eth1 ip configuration, except for the line
auto eth1 # to bring up eth1
Add the br0 ip configuration:
iface br0 inet static
address 192.168.100.100
netmask 255.255.255.0
bridge_ports eth1

On both server and client bring up br0:
ifup br0

On the server:
vtund -n -s -f /etc/vtund-server.conf

Then on client:
vtund -n -f /etc/vtund-client.conf lion server_public_ip_address

With luck, a UDP connection (tunnel) will be initialized. From client you should be able to ping 192.168.100.99 (server's br0 ip address).

On the server, type
brctl show
results:

bridge name bridge id STP enabled interfaces
br0 xxxxxxxx no eth1
tap0


Now set up another machine on the 192.168.100.x network on either side and ping both machines from it. If the machines can't ping eachother, ensure that the switch (vSwitch if in VMware) is set to Accept in Promiscuous Mode Policy Exceptions.

(see also Building Linux Virtual Private Networks (VPNs) on Google Books for example of the Ethernet Tunnel)

No comments:

Post a Comment