Ethernet CSU cross-connect automation

From ImageStream Router Documentation

Jump to: navigation, search
I did finally come up with a solution. I created a new Inetics chain designed to add/remove/change the L2 Ethernet header on packets. The new configuration
is very similar to the original source routed configuration I sent but now requires knowing the MAC address (in colon notation or Cisco notation) for the local Ethernet router.

With some additional development I believe it will be possible to use ARP probes within the new Inetics chain to determine the MAC address automatically. I just
don't have development cycles at the moment.

The new chain accepts the following arguments:
operation (add, change, remove)
out_device (name of device to forward the packet on)
destination MAC address (MAC address of the router to forward the DS3 packets to in standard colon or cisco notation)

For more information on Inetics chains see: http://wiki.imagestream.com/wiki/User_Chains

Example of Ethernet CSU setup using PPP cross-connected to a Cisco router on Ethernet1 at MAC address 0030.80b1.94a1 (00:30:80:b1:94:a1)

interface Ethernet1
 no ip address
!
loadchain eth_header.o eth_header
!
interface Serial0
encapsulation ppp
 addchain eth_header rx_ddp rx_ddp_default add eth1 0030.80b1.94a1
!
# Everything coming in eth1 gets routed to table 200 (out Serial0)
ip rule add dev eth1 table 200
ip route add table 200 default dev Serial0
!
# Everything coming in Serial0 gets routed to table 201 (out eth1)
ip rule add dev Serial0 table 201
ip route add table 201 192.1.1.2 dev eth1
ip neigh add proxy 192.1.1.1 dev eth1
!

Example of Ethernet CSU setup using Frame-Relay and VLANs cross-connected to a Cisco router on Ethernet1 at MAC address 0030.80b1.94a1 (00:30:80:b1:94:a1)

interface Ethernet1
!
interface Ethernet1.100
 no ip address
!
interface Ethernet1.200
 no ip address
!
loadchain eth_header.o eth_header
!
interface Serial0
encapsulation frame-relay ietf
!
interface Serial0.100
 encapsulation frame-relay ietf
 frame-relay interface-dlci 100
 addchain eth_header rx_ddp rx_ddp_default add eth1.100 0030.80b1.94a1
!
interface Serial0.200
 encapsulation frame-relay ietf
 frame-relay interface-dlci 200
 addchain eth_header rx_ddp rx_ddp_default add eth1.200 0030.80b1.94a1
!
# Everything coming in eth1.100 gets routed to table 100 (out Serial0.100)
ip rule add dev eth1.100 table 100
ip route add table 100 default dev Serial0.100
!
# Everything coming in eth1.200 gets routed to table 200 (out Serial0.200)
ip rule add dev eth1.200 table 200
ip route add table 200 default dev Serial0.200
!
# Everything coming in Serial0.100 gets routed to table 101 (out eth1.100)
ip rule add dev Serial0.100 table 101
ip route add table 101 192.1.1.2 dev eth1.100
!
# Everything coming in Serial0.200 gets routed to table 201 (out eth1.200)
ip rule add dev Serial0.200 table 201
ip route add table 201 192.1.1.2 dev eth1.200
!
# We have to add a static arp entry for the Cisco router on each VLAN. To avoid races on startup we issue both an add
# and a change command (if traffic starts flowing before we issue the add command it can fail)
ip neigh add 192.1.1.2 lladdr 00:30:80:b1:94:a1 dev eth1.100
ip neigh add 192.1.1.6 lladdr 00:30:80:b1:94:a1 dev eth1.200
ip neigh change 192.1.1.2 lladdr 00:30:80:b1:94:a1 dev eth1.100
ip neigh change 192.1.1.6 lladdr 00:30:80:b1:94:a1 dev eth1.200
# Reply to arp requests on behalf of the router at the other end of the DS3
ip neigh add proxy 192.1.1.1 dev eth1.100
ip neigh add proxy 192.1.1.5 dev eth1.200
!

Unfortunately due to the way VLANs retransmit packets the VLAN configuration requires adding static arp entries for the local ethernet router which
aren't required in the non-VLAN config. Eventually I believe I can add a cross-connect command which will greatly simplify this configuration and automate
the ARP process, ip route and ip rule commands.

These changes require 4.4.0-37 which is now synced up and available online. To update to 4.4.0-37 issue the following command from the command line:

update 4.4.0

Thanks,

-- 
Scott Yoder
Support Engineer
ImageStream Internet Solutions, Inc.
E-mail: syoder@imagestream.com
Personal tools
Router software releases