Salta el contingut

PyPI versions PyPI GitHub Discussion Tests Downloads

Fake Network Operating Systems - FakeNOS#

"La realitat no és més que una il·lusió, pero una molt persistent."

~ Albert Einstein

FakeNOS simula interaccions de sistemes operatius de xarxa. Pots simular interaccions de dispositius de xarxa com Cisco IOS o Huawei SmartAX sobre SSH amb poc esforç. Aquest projecte està principalment destinat a proves i desenvolupament.

Instal·lació | Exemples | Plataformes

Instal·lació#

PyPI versions

El paquet està disponible a PyPI, així que pots instal·lar-lo amb pip:

pip install fakenos

Ús#

Aquest és un exemple de simulació en el qual simulem dos dispositius, un executant Cisco IOS i un altre executant Huawei SmartAX. Per executar-ho, crea un fitxer inventory.yaml amb el següent contingut:

hosts:
  R1:
    username: admin
    password: admin
    platform: cisco_ios
    port: 6000
  R2:
    username: admin
    password: admin
    platform: huawei_smartax
    port: 6001

A continuació, crea un fitxer main.py amb el següent contingut:

from fakenos import FakeNOS
network_os = FakeNOS(inventory='inventory.yaml')
network_os.start()

Executa l'script:

python main.py

I Voilà! 💫 Tens dos dispositius en execució, un amb Cisco IOS i un altre amb Huawei SmartAX. En cas que vulguis connectar-t'hi, pots utilitzar qualsevol client SSH, com ssh:

# Per connectar-te a Cisco IOS
ssh -p 6000 admin@localhost

# Per connectar-te a Huawei Smartax
ssh -p 6001 admin@localhost

I aquí tens alguns comandaments 💻 que pots provar:

  1. Comandaments de Cisco IOS:

    • show version
    • show interfaces
    • show ip interface brief
  2. Comandaments de Huawei SmartAX:

    • display version
    • display board
    • display sysman service state

Tip

Moltes vegades, no tenim temps per llegir la documentació. Hi ha un senzill comandament help que mostra tots els comandaments disponibles. Es pot cridar amb help o ?.

Línia de comandaments#

FakeNOS ve amb una eina CLI que et permet iniciar la simulació des de la línia de comandaments. Pots provar un exemple predefinit executant:

fakenos

En aquest cas es crearan 3 dispositius:

  • Dispositiu Cisco IOS amb nom d'usuari user i contrasenya user al port 6000
  • Dispositiu Huawei SmartAX amb nom d'usuari user i contrasenya user al port 6001
  • Dispositiu Arista EOS amb nom d'usuari user i contrasenya user al port 6002

També pots especificar el fitxer d'inventari a utilitzar:

fakenos --inventory inventory.yaml