X

Best Practices from Oracle Development's A‑Team

Enabling L2TPv3 Support on Oracle Linux 6

There are times when we need to encapsulate certain traffic flows in an overlay network.  Hopefully it's a rare need, as it adds additional header overhead, processing requirements and complexity to an environment.  Drawbacks aside, the ability to create overlay networks is a valuable necessity sometimes and is a good tool to have in your tool belt!

Generic Routing Encapsulation (GRE) is a common tunneling protocol, allowing for encapsulating both IP and non-IP protocols within the GRE tunnel.  Sometimes L2TPv3 is needed (instead of GRE), which isn't available on Oracle Linux 6 (OL6) by default.  Having run into this situation recently, I worked with a colleague of mine (Catalin) who was kind enough to help me sort out how to get L2TPv3 available on OL6!

Without further ado, here are the steps to get L2TPv3 available on OL6:

  1. Look at the current version of iproute2
    $ ip -V
    ip utility, iproute2-ss091226
    
  2. Add a new repository to Yum
    $ cat /etc/yum.repos.d/oracle-openstack-ol6.repo
    [ol6_openstack10]
    name=Oracle Linux $releasever OpenStack 1.0 ($basearch)
    baseurl=http://yum$ociregion.oracle.com/repo/OracleLinux/OL6/openstack10/$basearch/
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
    gpgcheck=1
    enabled=1
    
  3. Update iproute (and other packages, if desired)
    sudo yum update
    
  4. Check iproute2 version (should be updated)
    $ ip -V
    ip utility, iproute2-ss130221
    
  5. Validate that l2tp is listed in the ip command
    $ ip
    Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
           ip [ -force ] -batch filename
    where  OBJECT := { link | addr | addrlabel | route | rule | neigh | ntable |
                       tunnel | tuntap | maddr | mroute | mrule | monitor | xfrm |
                       netns | l2tp | tcp_metrics }
           OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
                        -f[amily] { inet | inet6 | ipx | dnet | bridge | link } |
                        -l[oops] { maximum-addr-flush-attempts } |
                        -o[neline] | -t[imestamp] | -b[atch] [filename] |
                        -rc[vbuf] [size]}
    

And at this point, hopefully you have L2TPv3 available in the ip command!

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.Captcha