방화벽에서 연결 테이블을 가져 오려고합니다. 어떤 경우에는텔넷 세션 캡처 - pexpect 및 telnetlib가 너무 느립니다.
이상 200K 라인 "외부 46.33.77.20:53415 10.16.25.63:80 내부 TCP 유휴 0시 0분 4초, UIOB 3230, 플래그 바이트"
등을 할 수 있습니다 .
나는 이러한 테이블을 잡기 위해 pexpect와 telnetlib를 모두 구현하려고 시도했습니다. 불행히도 시간 초과 및/또는 40k보다 큰 어떤 것도 죽습니다.
pexpect 구현 :
connect.send("sho conn\n")
connect.expect("<--- More --->", timeout=360)
tmp_txt = connect.before
telnetlib 구현 :
telnet.write("sho conn\n")
tmp_text = telnet.read_until("<--- More --->")
이 정보를 잡는의보다 강력한 방법이 있습니까? 필자는 호출기 값을 사용하여 한 번에 줄 수를 제어합니다 (실행 전). 또한 - 방화벽에서 CPU를 모니터링하므로 연결이 표시되고 있음을 알 수 있습니다. 너무 많거나 너무 빠르면 pexpect 또는 telnetlib가 계속 유지됩니다.
감사합니다.
http://www.lag.net/paramiko/ – tMC
@tMC - 불행히도 SSH가 아닌 텔넷이어야합니다. – BDub
이 방화벽은 어플 라이언 스인 것처럼 보이지만 Linux를 실행하는 표준 PC는 아닙니다. 어떤 기계입니까? – tMC