Community discussions

MikroTik App
 
tucker
newbie
Topic Author
Posts: 49
Joined: Sat Mar 10, 2007 2:42 pm

RB450 and Billion 5200 compatibility issue - repeatable bug?

Thu Feb 12, 2009 5:19 pm

Introduction
I have identified what appears to be either a compatibilirty issue or a possible bug in the Rb450 hardware or firmware. This may also be a bug in the DSL router used - Billion BiPac 5200S or a combination of the two issues. I have been able to narrow this down into a reliable and repeatable test-case that generates consistent results in every situation.

Symptom
An ADSL router connected to an ethernet interface would show slightly erratic ping behaviour and would occasionally stop responding.

Setup
RB450 with 3.20 firmware
Basic configuration script for particular routing case (available on request). One DSL line, one local LAN, basic firewall, basic MASQ enabled.
DSL router with observed behaviour was a Billion BiPAC 5200S. The latest version of this router was used at all stages.
DSL router is configured in no NAT, /30 subnet, no filtering, no firewall and all RIP disabled.

Observation
Router connected to ether3 would initially work fine.
At random the router would stop responding to ping
Moving the router to another ether port and back again in many cases

Test Case
Assign /30 IP address for RB450 and DSL router and allocate to ether3
Install router in ether3 and ping to address from RB
Change interface to ether4 and move IP address to ether4
Ping and confirm access to router
Move router back to ether3 and change IP address to ether3
In many cases the PING then timed out

Diagnosis
Test with MAC ping on ether3 and it responds with correct MAC and IP address confirming Layer 2 connection
Use packet sniffer while running normal PING and identify that PING packets go from RB450 to DSL router and ping reply packets come back from DSL router to RB450
The RB450 is sending pings and getting replies from DSL router. These packets are not being passed into the input chain

To allow testing of this situation a completely fresh install was deployed:
RB450 with v3.20 firmware
Reset configuration
Assign IP address for DSL router and RB450
No other options defined

In this case the RB450 performed fine in every test and repeated the all of the test case tests with no problems. Ping responded in every case.

Using the same router the original configuration was re-applied and the problem arose again. After comparison the following was observed:
IP neighbour discovery was disabled on ether3, ether4 and ether5 but enabled on ether1 and ether2
When moving the router between ports with discovery disabled the RB450 kept a memory of the DSL router. If it was re-connected to the last port it responded to PING on then it worked. If moved to another port with discovery disabled the router did not respond. Packet sniffer confirmed packets were leaving on correct interface and replies received on correct interface.
If the DSL router was moved to a port with discovery enabled it immediately worked again. It then kept a memory of this port and would not work if moved to ether3, ether4 or ether5
If the router was rebooted the DSL router would start working on whatever port it was plugged into regardless of discovery settings. if moved to a port with discovery disabled it would then stop working again.
If IP discovery was turned on for a port that the router was not pinging on then it would start responding to PING again.

The conclusion was very clear:
If IP neighbour discovery was enabled the router worked as expected in all cases.
If IP discovery was disabled on a port that port would work if it was the first port to see the DSL router but would not work on any other port that had discovery disabled.
if router was moved to a port with discovery enabled then returned to a port with discovery disabled it would not work
Enabling discovery seemed to correct the problem in all cases.

The above test situation was repeated using a Linksys ADSL2 gateway router. This was an AG241 v2 and was configured in the same mode - no NAT, no firewall, no RIP, single /30 assigned. The Linksys did not show the same behaviour and it worked in all cases regardless of the setting of IP discovery.

The test situation was repeated using a Draytex 110 Ethernet modem. This was left on default as it is intended to operate as a PPPoE to PPPoA bridge modem. It does have an IP address of 192.168.1.1/24 for test and diagnostic information. This device did not display the same behaviour.

The test situation was again repeated but the Billion router was connected through a Netgear switch rather than directly. This made no difference to the test situation or results.

The only conclusions I can lead to are:
The problem affects the Billion router only and not other routers in our test suite
The problem lies with the Billion router and it is not compliant.
The problem lies with the neighbour discovery code in the RB450
There is a compatibility issue between the Billion BiPac 5200 and the RB450

I am not sure what else can be concluded. I wanted to document this case on the chance that it may help anyone in a similar situation or it may help in identifying a bug or compatibility issue. I am available to provide additional assistance, testing or information if required.
 
SurferTim
Forum Guru
Forum Guru
Posts: 4636
Joined: Mon Jan 07, 2008 10:31 pm
Location: Miramar Beach, Florida

Re: RB450 and Billion 5200 compatibility issue - repeatable bug?

Thu Feb 12, 2009 7:25 pm

Please show me
/ip address print
and
/ip route print
on the RB450. That will get things started.

Change any references to a public ip to xxx.xxx.xxx.xxx just to keep things safe.

Who is online

Users browsing this forum: No registered users and 35 guests