MPLS LDPD LINUX EXPERIMENT(Quagga)
本文为原创,禁止转载。
文章是在个人研究怎么在LINUX上实现MPLS的总结。暂时LINUX上还没法实现BGP MPLS VPN
1.Build a linux environment supporting mpls ,quagga and ldpd
建立MPLS在linux上转发基础环境的步骤
1) upgrade kernel
It need linux kernel support mpls stack.Such kernel 4.6
需要linux内核支持mpls模块,更新内核
wget
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-yakkety/linux-headers-4.6.0-040600_4.6.0-040600.201606100558_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-yakkety/linux-headers-4.6.0-040600-generic_4.6.0-040600.201606100558_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-yakkety/linux-image-4.6.0-040600-generic_4.6.0-040600.201606100558_amd64.deb
install
dpkg -i *.deb
update grub and reboot
update-grub
reboot
2) Enable MPLS in kernel
调整MPLS内核参数,启用MPLS stack
modprobe mpls_router
modprobe mpls_gso
modprobe mpls_iptunnel
sysctl -w net.mpls.conf.eth0.input=1
sysctl -w net.mpls.conf.lo.input=1
sysctl -w net.mpls.platform_labels=1048575
You’ll need to set net.mpls.conf.[interface-name].input=1 for any other interfaces that you plan to receive MPLS packets on, otherwise the MPLS route table won’t accept your routes