Как настроить сетевую конфигурацию для OpenFlow на OpenWrt?

Вопрос или проблема

Я сделал кастомную сборку Openwrt (barrier breaker) с Openflow 1.3 и смог подключить её к контроллеру ryo simple_switch_13 в outofband режиме. Порты Ethernet номер 3 и 4 настроены как openflow порты, но когда я подключаю устройство к этим портам и вручную устанавливаю IP, оно не может пинговать 192.168.1.1 или любое другое устройство в той же сети!

В чем тут проблема? Openflow кажется в порядке, и эти порты работают нормально, когда не настроены как openflow порты. Пожалуйста, дайте несколько подсказок.

Конфигурационные файлы внутри openwrt:

/etc/config/network

config switch 'eth0'                                                                
    option name 'eth0'                                                          
    option reset '1'                                                            
    option enable_vlan '1'                                                      

config switch_vlan                                                                  
    option device 'eth0'                                                        
    option vlan '1'                                                             
    option ports '1 2 8t'                                                       

config switch_vlan                                                                  
    option device 'eth0'                                                        
    option vlan '2'                                                             
    option ports '0 8t'                                                         

config interface 'loopback'                                                         
    option ifname 'lo'                                                          
    option proto 'static'                                                       
    option ipaddr '127.0.0.1'                                                   
    option netmask '255.0.0.0'                                                  

config globals 'globals'                                                            
    option ula_prefix 'fdbe:80c3:7cea::/48'                                     

config interface 'lan'                                                              
    option ifname 'eth0.1'                                                      
    option force_link '1'                                                       
    option type 'bridge'                                                        
    option proto 'static'                                                       
    option ipaddr '192.168.1.1'                                                 
    option netmask '255.255.255.0'                                              
    option ip6assign '60'                                                       

config interface 'wan'                                                              
    option ifname 'eth0.2'                                                      
    option proto 'dhcp'                                                         

config interface 'wan6'                                                             
    option ifname '@wan'                                                        
    option proto 'dhcpv6'                                                       

config interface                                                                    
    option 'ifname' 'eth0.4'                                                    
    option 'proto' 'static'                                                     

config interface                                                                    
    option 'ifname' 'eth0.3'                                                    
    option 'proto' 'static'                                                     

/etc/config/openflow файл:

config 'ofswitch'
    option 'dp' 'dp0'
    option 'dpid' '000000000001'
    option 'ofports' 'eth0.3 eth0.4'
    option 'ofctl' 'tcp:CONTROLLER_IP:6633'
    option 'mode'  'outofband'

Ryu simple_switch_13 работает как outofband контроллер, а устройство – Linksys E3000.
Спасибо.

Вам удалось это решить? У меня сейчас такая же проблема. У меня есть эта конфигурация в /etc/config/openvswitch

config ovs ovs
    option disabled 1
    option ca '/etc/openvswitch/example_ca.crt'
    option cert '/etc/openvswitch/example_cert.crt'
    option key '/etc/openvswitch/example_key.crt'

config ovn_northd north
        option disabled 1

config ovn_controller controller
        option disabled 1

config ovs_bridge
        option disabled 1
        option name 'my-bridge'
        option controller 'tcp:192.168.0.1'
        option datapath_desc ''
        option datapath_id ''
        option fail_mode 'standalone'

config ovs_port
        option disabled 1
        option bridge 'my-bridge'
        option port 'ovs-port1'
        option ofport '1'
        option tag '123'
        option type 'internal' 

Ответ или решение

Настройка сетевой конфигурации для OpenFlow на OpenWRT

Для успешной интеграции OpenFlow с OpenWRT и обеспечения корректной работы сетевых портов важно учесть несколько ключевых аспектов. Ниже приведены подробные шаги по настройке сетевой конфигурации для OpenFlow, основанные на предоставленной информации о проблеме.

Шаг 1: Анализ конфигурации сети

Исходная конфигурация сети в файле /etc/config/network выглядит следующим образом:

config switch 'eth0'                                                                
    option name 'eth0'                                                          
    option reset '1'                                                            
    option enable_vlan '1'                                                      

config switch_vlan                                                                  
    option device 'eth0'                                                        
    option vlan '1'                                                             
    option ports '1 2 8t'                                                       

config switch_vlan                                                                  
    option device 'eth0'                                                        
    option vlan '2'                                                             
    option ports '0 8t'                                                         

config interface 'loopback'                                                         
    option ifname 'lo'                                                          
    option proto 'static'                                                       
    option ipaddr '127.0.0.1'                                                   
    option netmask '255.0.0.0'                                                  

config interface 'lan'                                                              
    option ifname 'eth0.1'                                                      
    option force_link '1'                                                       
    option type 'bridge'                                                        
    option proto 'static'                                                       
    option ipaddr '192.168.1.1'                                                 
    option netmask '255.255.255.0'                                              

config interface 'wan'                                                              
    option ifname 'eth0.2'                                                      
    option proto 'dhcp'                                                         

config interface 'wan6'                                                             
    option ifname '@wan'                                                        
    option proto 'dhcpv6'                                                      

Обратите внимание, что порты 3 и 4, которые вы используете для OpenFlow, не затрагиваются в VLAN 1 или 2. Это может быть проблемой. Чтобы порты могли взаимодействовать с контроллером и обмениваться трафиком, рекомендую создать отдельный VLAN для этих портов.

Шаг 2: Настройка OpenFlow

В файле /etc/config/openflow конфигурация выглядит следующим образом:

config 'ofswitch'
    option 'dp' 'dp0'
    option 'dpid' '000000000001'
    option 'ofports' 'eth0.3 eth0.4'
    option 'ofctl' 'tcp:CONTROLLER_IP:6633'
    option 'mode' 'outofband'

Убедитесь, что CONTROLLER_IP заменен на фактический IP адрес вашего контроллера Ryu.

Шаг 3: Добавление VLAN для OpenFlow портов

Добавьте новый VLAN в файл /etc/config/network, чтобы порты eth0.3 и eth0.4 могли передавать трафик по нужному адресу:

config switch_vlan                                                                  
    option device 'eth0'                                                        
    option vlan '3'                                                             
    option ports '3 4 8t'                                                          # Обратите внимание, что добавлены порты 3 и 4

Убедитесь, что вы также настроили интерфейс для нового VLAN, чтобы IP-адреса и маршрутизация были правильно сконфигурированы.

Шаг 4: Проверка конфигурации Open vSwitch и тестирование

Если на вашем устройстве OpenWRT установлен Open vSwitch (OVS), убедитесь, что он настроен правильно. Ваша текущая конфигурация показывает, что OVS отключен:

config ovs ovs
    option disabled 1

Для работы OpenFlow вы можете отключить OVS или убедиться, что он сконфигурирован так, чтобы не конфликтовать с OpenFlow.

Шаг 5: Тестирование конфигурации

  1. Перезапустите сетевые службы на OpenWRT для применения изменений:

    /etc/init.d/network restart
  2. Подключите устройство к портам eth0.3 и eth0.4 и проверьте доступность IP адресов:

    ping 192.168.1.1
  3. Проверьте, что контроллер Ryu видит открытые порты с помощью:

    sudo ovs-vsctl show

Если вы следовали всем шагам, ваше соединение должно работать корректно, а порты eth0.3 и eth0.4 должны быть доступны для обмена данными как с контроллером OpenFlow, так и с другими устройствами в сети.

Заключение

Настройка OpenFlow в OpenWRT может показаться сложной задачей, но следуя приведенным рекомендациям и тщательно настраивая VLAN и порты, вы сможете устранить большинство возможных проблем с сетевым соединением. Не забывайте регулярно проверять логи для лучшего понимания происходящих процессов и исключений.

Оцените материал
Добавить комментарий

Капча загружается...