Ir para conteúdo

[Python] Ping em segmentos diferentes


wescleyp

Posts Recomendados

Pessoal alguém pode me informar se é possível em python pingar segmentos de redes diferentes de uma única vez?

Ex.:

Tenho a máquina A que tenho um script .py que acessa via SSH a máquina B nesta máquina quero chamar o comando ping e verificar se existe resposta, porém são 4 redes distintas (192.168.0.0, 10.1.1.0, 200.133.12.0 e 168.74.144.0).

 

Obrigado.

Link para o comentário
Compartilhar em outros sites

Sem ter a certeza, eu recomendaria procurar sobre módulos que permitem o MultiThreading (Se não souber o que é recomendo aprender) em Python (como por exemplo o módulo Thread), assim talvez conseguisse estabelecer multiplas ligações à máquina B (ao mesmo tempo) e pingar em todas em alvos diferentes.

MultiThreading:

http://wiki.osdev.org/Symmetric_Multiprocessing

http://wiki.osdev.org/Multiprocessing

http://wiki.osdev.org/Multitasking_Systems

https://en.wikipedia.org/wiki/Computer_multitasking

Por fim recomendo também o capítulo que fala sobre Threads do livro "C e Assembly" do Frederico Pissara. Junto Envio.

MultiThreading in Python:

https://docs.python.org/3/library/threading.html

https://www.tutorialspoint.com/python/python_multithreading.htm

Entre toda a outro documentação oficial do Python.

 

Peço desculpa não poder ajudar diretamente, tenho pouquissimo conhecimento em Python.

C_e_Assembly_x86-64_v0_33.9.pdf

Link para o comentário
Compartilhar em outros sites

7 horas atrás, Rick Santos disse:

Sem ter a certeza, eu recomendaria procurar sobre módulos que permitem o MultiThreading (Se não souber o que é recomendo aprender) em Python (como por exemplo o módulo Thread), assim talvez conseguisse estabelecer multiplas ligações à máquina B (ao mesmo tempo) e pingar em todas em alvos diferentes.

MultiThreading:

http://wiki.osdev.org/Symmetric_Multiprocessing

http://wiki.osdev.org/Multiprocessing

http://wiki.osdev.org/Multitasking_Systems

https://en.wikipedia.org/wiki/Computer_multitasking

Por fim recomendo também o capítulo que fala sobre Threads do livro "C e Assembly" do Frederico Pissara. Junto Envio.

MultiThreading in Python:

https://docs.python.org/3/library/threading.html

https://www.tutorialspoint.com/python/python_multithreading.htm

Entre toda a outro documentação oficial do Python.

 

Peço desculpa não poder ajudar diretamente, tenho pouquissimo conhecimento em Python.

C_e_Assembly_x86-64_v0_33.9.pdf

 

Link para o comentário
Compartilhar em outros sites

7 horas atrás, Rick Santos disse:

Sem ter a certeza, eu recomendaria procurar sobre módulos que permitem o MultiThreading (Se não souber o que é recomendo aprender) em Python (como por exemplo o módulo Thread), assim talvez conseguisse estabelecer multiplas ligações à máquina B (ao mesmo tempo) e pingar em todas em alvos diferentes.

MultiThreading:

http://wiki.osdev.org/Symmetric_Multiprocessing

http://wiki.osdev.org/Multiprocessing

http://wiki.osdev.org/Multitasking_Systems

https://en.wikipedia.org/wiki/Computer_multitasking

Por fim recomendo também o capítulo que fala sobre Threads do livro "C e Assembly" do Frederico Pissara. Junto Envio.

MultiThreading in Python:

https://docs.python.org/3/library/threading.html

https://www.tutorialspoint.com/python/python_multithreading.htm

Entre toda a outro documentação oficial do Python.

 

Peço desculpa não poder ajudar diretamente, tenho pouquissimo conhecimento em Python.

C_e_Assembly_x86-64_v0_33.9.pdf

" eu recomendaria procurar sobre módulos que permitem o MultiThreading" cara... valeu já deu uma luz, eu tô iniciando em py por isso ainda a inocência no assunto.

"Peço desculpa não poder ajudar diretamente" eu que agradeço meu velho. Obrigado mesmo!

6 horas atrás, Fernando Mercês disse:

+1 pela busca sobre multithreading.

Ah, só pra avisar que o @fredericopissarra tá aqui. :) Ele fez dezenas de correções/melhorias no curso Programação Moderna em C. Valeu mesmo!

Tenho acompanhado! :)

Link para o comentário
Compartilhar em outros sites

Lembrando que o Multithreading do Python nos traz as features de poder programar de forma assíncrona mas ainda assim ele não faz o processamento de forma paralela. 

Isso acontece por causa do Global Interpreter Lock (GIL), que é praticamente um mutex grandão que fica no interpretador Python, usado porque o gerenciamento de memória do python não é thread-safe. Isso cria uma espécie de gargalo, então se o objetivo é fazer o negócio rapidão pá pum usando seus vários cores de forma paralela Python não é a linguagem pra isso. (ref: https://wiki.python.org/moin/GlobalInterpreterLock)

Porém, se o negócio é só fazer de forma assíncrona o Multithreading do python te dá isso de forma simples e fácil de usar. 

Por favor me corrijam se falei alguma bobajona.  

Abraços!

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois...
Em 11/10/2017 em 12:12, gobannon disse:

Lembrando que o Multithreading do Python nos traz as features de poder programar de forma assíncrona mas ainda assim ele não faz o processamento de forma paralela. 

Isso acontece por causa do Global Interpreter Lock (GIL), que é praticamente um mutex grandão que fica no interpretador Python, usado porque o gerenciamento de memória do python não é thread-safe. Isso cria uma espécie de gargalo, então se o objetivo é fazer o negócio rapidão pá pum usando seus vários cores de forma paralela Python não é a linguagem pra isso. (ref: https://wiki.python.org/moin/GlobalInterpreterLock)

Porém, se o negócio é só fazer de forma assíncrona o Multithreading do python te dá isso de forma simples e fácil de usar. 

Por favor me corrijam se falei alguma bobajona.  

Abraços!

Certamente não sabia, agradeço imenso :)

Não gosto de linguagens de alto-nível, muito menos Python, daí ter pouco conhecimento dela e ter pensado que realizava MultiThreading Síncrono.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...