Enabling L2TPv3 Support on Oracle Linux 6

May 14, 2019 | 2 minute read
Text Size 100%:

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!

Tim Clegg


Previous Post

Load Balancing SSL Traffic in OCI

Amit Chakraborty | 11 min read

Next Post


OCI Security Monitoring Using Oracle CASB Cloud Service – Security Controls and Policy Alerts

Pulkit Sharma | 5 min read