I am reasonably new to RB and ROS having moved from using custom Linux and BSD distros on embedded PC hardware. I have a lot of experience with networks but reasonably new to RB.
I have a situation on test where I have RB150 with 3 DSL lines. Each DSL line has a /29 with RB assigned one address and the DSL router assigned another. I have each DSL line on ether2,3 and 4 and ether1 is LAN.
I have setup masquerade and by setting default gateway I can masq through the connection that is set as default gateway.
However I noticed that when I try to connect to the RB using its IP address on the DSL connection I can only connect to the connection that contains the default gateway.
On past systems I expected the router core to transmit reply packets using the gateway for the subnet in which the IP address it received the packet from. In effect, routing the packet to the gateway in the subnet in which the router source address lines. This doesnt seem to be the case on RoS. I noticed that there is no obvious way to define the gateway for each subnet.
A quick check with torch and a few log rules showed that the packet would arrive on an interface for the relevant DSL connection e.g. ether4 but the reply would try to leave by the default gateway and interface for the defaulty gateway e.g. ether2 but using a source address for ether4. A further check on ARP table showed the RB was sending the packet to the gateway router on ether2 with a source address for ether4. Source address rejection on the DSL router (either client or head end) rejected the packet.
The next step I tried was to implement source address routing. I added a mangle rule to add a route mark for each packet based on source address. I then added routing rules to route for dest 0.0.0.0/0 conditional on the router mark to the gateway for the relevant src address. This all seemed quite sensible.
However the system still tried to send the packet on the default gateway. I thought the mark was not being applied. A few more log commands showed the packet was being tagged with a routing mark.
At this stage I cannot get the system to work. I have been through the documentation many times, have defaulted the configuration and rebuilt it several times, scanned the forums and tried everything. I cant believe someting as fundamental and simple as this can be so difficult. I am at a loss to see what I have missed and would appreciate any comments. I have noticed a few posts on the forum that suggest there may be an issue with route marking on the packets leaving the router itself.
For those interested, my plan is to implement a bonding service. I have full access to my own routers in a data centre with excellent connectivity. I also have access to the back of the head-end routers on our DSL service. I plan to place the RB between the DSL head-end routers and the transit routers. I have a large IP range in place so I could offer bonded public IP address ranges. I can thus offer a RB bonding service or a DSL bonding service. At this stage I have a very successful service running on my embedded BSD platform but I have packet flow limitations and would like to move to RB. A longer term plan would then be to offer this as a service that RB users could use and we could use for client solutions.
To make all of this work I plan 2 or more EoIP tunnels and bonding. But this means i need to make sure the packets leave the router on the correct DSL interface at the tail-end and ensure that tunnel1 leaves on DSL1, tunnel2 on DSL2 etc. At this stage I cannot get this to happen.
If anyone can offer any suggestions or comments I would be very appreciative! Thanks in advance for all who read/comment.