2017-01-12 14 views
0

Я новичок в использовании Mininet и задаюсь вопросом, как настроить коммутатор (желательно на python, используя собственный класс Switch), чтобы дублировать весь трафик на определенном порту, подключенном к хосту, с запущенным Wireshark весь трафик. Какие-либо предложения?Конфигурация зеркального отображения портов Mininet

Существует мой скрипт конфигурации:

class MyTopo(Topo): 
"Simple topology example." 

def __init__(self): 
    "Create custom topo." 

# Initialize topology 
Topo.__init__(self) 

    # Add hosts and switches 
leftHost = self.addHost('h1') 
rightHost = self.addHost('h2') 
idsHost = self.addHost('h3') 
    Switch = self.addSwitch('s1') 


    # Add links 
    self.addLink(leftHost,Switch) 
    self.addLink(rightHost, Switch) 
    self.addLink(Switch, idsHost) 


topos = { 'mytopo': (lambda: MyTopo()) } 

ответ

0

Чтобы увидеть трафик коммутатора на хосте (скажем, h1), имеющий Wireshark. Хост должен получить каждый пакет, входящий в этот коммутатор. Вы можете написать контроллер RYU для этого коммутатора, который наряду с передачей пакета соответствующему хосту (скажем, h2) также передает пакет h1. Вы можете взглянуть на https://osrg.github.io/ryu-book/en/html/switching_hub.html Это коммутационный концентратор, то есть пакет, входящий в коммутатор, будет перенаправлен на все интерфейсы, отличные от входящего интерфейса. Вам нужно изменить его таким образом, чтобы переключиться на интерфейс h1 независимо от предполагаемого хоста.