Redes definidas por Software com Mininet e POX - Criando meu primeiro Controlador
A proposta deste estudo é servir como guia básico para iniciantes com redes SDN. O propósito não é esgotar o assunto, e sim traçar um passo a passo na arte de redes de computadores e de sensores utilizando controladores. Para desenvolvimento deste estudo foi considerado que o leitor tem conhecimento básico em protocolos de rede e sistemas operacionais.
[ Hits: 3.897 ]
Por: cristofe coelho lopes da rocha em 01/01/2024
#importando as bibliotecas
import pox.openflow.libopenflow_01 as of
from pox.core import core
from pox.lib.revent import *
#chamando o modulo para log
log = core.getLogger()
class mycontroller(EventMixin):
switches = {}
def __init__(self):
self.listenTo(core.openflow)
def _handle_ConnectionUp(self, event):
log.debug("Connection UP from %s", event.dpid)
mycontroller.switches[event.dpid] = event.connection
def _handle_PacketIn(self, event):
# Implemente a lógica para lidar com pacotes aqui
pass
def launch():
core.openflow.miss_send_len = 1024
core.registerNew(mycontroller)
import pox.openflow.libopenflow_01 as of
from pox.core import core
from pox.lib.revent import *
from pox.lib.addresses import EthAddr, IPAddr
from pox.lib.util import dpidToStr
log = core.getLogger()
class mycontroller(EventMixin):
switches = {}
def __init__(self):
self.listenTo(core.openflow)
def _handle_ConnectionUp(self, event):
log.debug("Connection UP from %s", event.dpid)
mycontroller.switches[event.dpid] = event.connection
def _handle_PacketIn(self, event):
packet = event.parsed
#Drop packetpass
msg = of.ofp_flow_mod()
msg.match.in_port = event.port
msg.match.dl_src = packet.src
msg.match.dl_dst = packet.dst
event.connection.send(msg)
log.debug(" Drop packet sw=%s in_port=%s src=%s dst=%s" % (event.dpid, event.port, packet.src, packet.dst))
def launch():
core.openflow.miss_send_len = 1024
core.registerNew(mycontroller)
Melhorando o nível de segurança com chflags
Esteganografia e Esteganálise: transmissão e detecção de informações ocultas em imagens digitais
Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
Python - Uma linguagem orientada a objetos
Construindo um portscanner TCP com Python
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Integração do Flatpak e Flathub no Kubuntu (KDE Discover)
Habilitando suporte ao Flatpak e Flathub no Ubuntu
Instalar Ubuntu com Btrfs + LUKS de forma fácil
Continuando meus tópicos anteriores (9)
Executar um programa em Rust (2)
Não consigo publicar screenshots no Viva o Linux [RESOLVIDO] (5)









