在Linux上安装开源软件创建SDN

环境

本教程通过 Quagga 实现的 OSPF 协议来配置动态路由。该环境包括两个名为 Alpha 和 Beta 的 CentOS 7.7 主机。两台主机共享访问 192.168.122.0/24 网络。

主机 Alpha:

IP:192.168.122.100/24 网关:192.168.122.1

主机 Beta:

IP:192.168.122.50/24 网关:192.168.122.1

安装软件包

首先,在两台主机上安装 Quagga 软件包。它存在于 CentOS 基础仓库中:


  1. yum install quagga -y

启用 IP 转发

接下来,在两台主机上启用 IP 转发,因为它将由 Linux 内核来执行:


  1. sysctl -w net.ipv4.ip_forward = 1
  2. sysctl -p

配置

现在,进入 /etc/quagga 目录并为你的设置创建配置文件。你需要三个文件:

  • zebra.conf:Quagga 守护程序的配置文件,你可以在其中定义接口及其 IP 地址和 IP 转发
  • ospfd.conf:协议配置文件,你可以在其中定义将通过 OSPF 协议提供的网络
  • daemons:你将在其中指定需要运行的相关的协议守护程序

在主机 Alpha 上,


  1.  [root@alpha]# cat /etc/quagga/zebra.conf
  2. interface eth0
  3.  ip address 192.168.122.100/24
  4.  ipv6 nd suppress-ra
  5. interface eth1
  6.  ip address 10.12.13.1/24
  7.  ipv6 nd suppress-ra
  8. interface lo
  9. ip forwarding
  10. line vty
  11.  
  12. [root@alpha]# cat /etc/quagga/ospfd.conf
  13. interface eth0
  14. interface eth1
  15. interface lo
  16. router ospf
  17.  network 192.168.122.0/24 area 0.0.0.0
  18.  network 10.12.13.0/24 area 0.0.0.0
  19. line vty
  20.  
  21. [root@alphaa ~]# cat /etc/quagga/daemons
  22. zebra=yes
  23. ospfd=yes

在主机 Beta 上,


  1. [root@beta quagga]# cat zebra.conf
  2. interface eth0
  3.  ip address 192.168.122.50/24
  4.  ipv6 nd suppress-ra
  5. interface eth1
  6.  ip address 10.10.10.1/24
  7.  ipv6 nd suppress-ra
  8. interface lo
  9. ip forwarding
  10. line vty
  11.  
  12. [root@beta quagga]# cat ospfd.conf
  13. interface eth0
  14. interface eth1
  15. interface lo
  16. router ospf
  17.  network 192.168.122.0/24 area 0.0.0.0
  18.  network 10.10.10.0/24 area 0.0.0.0
  19. line vty
  20.  
  21. [root@beta ~]# cat /etc/quagga/daemons
  22. zebra=yes
  23. ospfd=yes

配置防火墙

要使用 OSPF 协议,必须允许它通过防火墙:


  1. firewall-cmd --add-protocol=ospf permanent
  2.  
  3. firewall-cmd reload

现在,启动 zebra 和 ospfd 守护程序。

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章