I have been having to configure a lot of QoS implemntations in the lab latley and have been needing to simulate WAN links to effectivly test my configurations. I found a great open-source tool called WanEM that works a treat whilst also having great documentation and tutorials. It can be run as a live knoppix CD on commodity hardware and is a piece of cake to configure and manage.
I found an old PC, populated it with old NIC’s lying around and in about 5 minutes I was ready to roll. It also supports NAT so you can set it up a production network without worrying about setting up routing etc.
The big issue I had was the setup wizard and all the tutorials were all geared around each interface being in a different broadcast domain/subnet. The only documented solution I found to emulate a WAN for hosts on the same Subnet was to run WANem “On-a-stick”, this works ok for Linux/Windows hosts but I wasn’t sure how IOS would handle static routes to a connected network via a gateway on THAT same connected network (If that makes sense).
I solved this issue by bridging the interfaces in knoppix and assigning a single IP to the bridge interface so I could still Manage the Web interface.
- From the Console I executed the command “exit2shell” this dropped me out to the knoppix shell
- I executed the following commands to remove any existing IP configuration and bring up all the interfaces:
ifconfig eth0 0.0.0.0 up
ifconfig eth1 0.0.0.0 up
ifconfig eth2 0.0.0.0 up
ifconfig eth3 0.0.0.0 up
ifconfig eth4 0.0.0.0 up
- I created a Bridge-group interface called br0:
brctl addbr br0
- I added each interface to the bridge-group br0
brctl addif br0 eth0
brctl addif br0 eth1
brctl addif br0 eth2
brctl addif br0 eth3
brctl addif br0 eth4
- I assigned an ip address to the bridge-group br0 for management
ifconfig br0 10.1.1.254 netmask 255.255.255.0
- I added a default Route so I could manage the WANem box from another network
route add default gw 10.1.1.1
- I started the tool again with the command “wanem”
I then connected to http://10.1.1.254/WANem and everything worked a treat!
how did this work out for you? I’m looking at bridging multiple LAN’s through a WANem box. Did you use the knoppix build or the VM?
thx
It works really well. I used the knoppix build as I am running it on a dedicated/low spec machine.
The only thing that is a little annoying is that with the knoppix build when you reboot the NIC’s don’t always get assigned the same number(at least on my box anyway) so if your doing some really specific emulation then you have to just double check to make sure you are emulating the right Bandwidth on the right interfaces.
Thanks
reloadin10
I set up WANem as a bridge using your advice. There is a single LAN connection to a test machine from the WANem box. WANem is set to delay by 100ms. When I ping the test machine from another PC, the ping time is 100ms, not 200ms as I expect. Does this mean the route is asymmetric somehow, and can it be changed to symmetric?
Do you have a single interface setup or multiple bridged interfaces? Explain your topology and configuration a little more specifically and I’ll do my best to help you.
Hi, very good article. I’ve got a question I hope you can help with.
Scenario:
2 Sites – A & B.
Each site has 2 Routers for redundancy
The cross-site interconnections should be fully meshed i.e. 4 links and running OSPF
Lab:
I have a lab setup to try this out.
At the moment I have 2 FE ports on each router and Site A and B routers are fully meshed. OSPF is running and everything is great
Net Step – drop WanEm into the cross-site links to add delay / maybe reduce bandwidth
Solution? use Wanem in bridged mode so it is transparent and I do not have to change the point-to-point OSPF IP links
I have 2 Dell PowerEdge 750 servers with 4 NICs each
Problem/Question:
Do I just do what you have suggested and bridge all 4 interfaces?
This doesnt make sense (if I understand bridging) shouldn’t I bridge a pair of NICs on each server i.e. bridge eth0 and eth1 and bridge eth2 and eth3
I.E. this would ensure the point-to-point links stay physically and logically separated
Please tell me if I’m way off
hi
answering my own question here:
I guess bridging all interfaces will be fine because the advantage of L2 bridging is it is transparent to protocols above the MAC layer
I will let you know what happens when I try it.
As long as each redundant link is point-to-point on it’s own /30 then it shouldn’t matter eitherway. If all 4 links are not point-to-point (ie into a carrier cloud) then all will wanem interfaces will have to be in the same bridge group.
If they are point-to-point I would still probably create two seperate bridge groups just to keep the broadcasts on the link seperate.
If you are planning on using this to test QOS then make sure you use a decent machine for your wanem box, I basically gave up on using it to test QOS in a stressful UDP flood environment as wanem was responsible for dropping loads of packets even when it is just setup to bridge without introducing any delay etc.
Hello everyone,
Can i use Wanem as wireless router. I mean i want to send images from the robot to computer. Can i use wanem as my wireless router in between robot and computer.
I’m not actually sure what you are trying to acheive but i’d suggest that Wanem is not the product for you too do it. If you can clarify further I may be able to point you in the right direction.
Hi
Thank you very much for your reply.
I want to send real time images from Mobile robot to operational control unit (computer) by introducing 2 sec delay.
And also i want to send commands from OCU to robot for controlling the robot here also i want to send commands for every 2 sec.
So i am placing Wanem b/w my OCU and robot for introducing 2 sec delay. If u send ur mail id i will send the picture.
Thanks,
Sandy
Hi, this tutorial es great but i had a little problem when i tried to excecute
brctl addbr br0
this is the message
Bridge firewalling registerd
br0: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
Any idea?
I think this has too do with the bridging utils trying to offload checksumming onto the NIC and your network card not having this feature. Have you actually tried to see if it working, in my mind this error wouldn’t actually stop the bridge group functioning for what you want it for.
Hi
Thanks for the tutorial. I am struggling with a couple of issues though. First of all my setup is all in the same subnet. Everything gets connected to one router, which connects to the modem which connects to the internet.
I do not know what is wrong
Basically I want impairments to the machine connected to eth1. etho is connected to the router. I follow the steps as mentioned, but the WANem machine with 2 NICs cannot ping anymore once the bridge has been created. I do not know what is wrong. Is there some specific way or steps in which I have to attach or detach the LAN cables. I got it to work once, but now it does not seem to work
Thanks
Pingback: J House Consulting / WAN Emulation for VDI and SBC Testing
This sound correct. Have you put the IP Address on the Bridge Interface and if you are trying to ping hosts outside of that subnet have you added a default gateway?
I got it figured out. Thanks. There was an issue with me understanding how bridge mode works. So I would not setup the eth0 and eth1 to 0.0.0.0 and then create the bridge mode
So it does now
Hello.
My problem is similar to Ryan: WANem is set up as bridge mode (2 NIC PC). I have two video conferencing systems and WANem is configured in the middle of them. All devices are on a same LAN and have same default GW. When I set WANem delay to 100ms and ping from video conferencing system 1 to system 2, ping time is 100ms.
All help is more than welcome
wireless routers are very necessary nowadays because we do not want so many wires running around the home ;`,
Hi i set up the bridge with two eth0 eth1 and eth2 interfaces.However I’m unable to to open the html page i.e http:// /WANem
@Nigel,
I have the same issue…
See the details in this link that describes WANem HD install and bridge setup. The following corrected the http connect issue.
Edit /etc/hosts. 127.0.0.1 should only be referenced by localhost. Add a new line that assigns the full qualified hostname and the short hostname of your WANem to its IP address, eg.:
192.168.0.20 wanem.mydomain.intra wanem
http://ogr.is/howtos/wanem.html
Worked for me…
Pingback: http://www.nflpersonalizedstore.com/products/NFL-Customized-Jerseys-18/Cincinnati-Bengals-Customized-Jersey-422/{Bengals
It works great for me.
Thanks.