관리 메뉴

VivaButton

[파이썬]nslookup명령어를 사용하여 url로 ip대역대 확인 본문

IT/파이썬

[파이썬]nslookup명령어를 사용하여 url로 ip대역대 확인

비바버튼 2018. 8. 8. 13:46
728x90

사내에 보안정책이 강화 되어 있는 환경일수록 클라우드 환경에서 업무를 진행하기가 힘든 현실이다.

최근 파이썬에 관심을 가지고, 기존에 자바로 개발하던 것들도 파이썬으로 개발하고 있다.


아래의 코드는 파이썬 3.5x 버전에서 작성된 url로 5000번 요청하여 요청 ip를 중복없이 set 변수에 담는 코드이다.

5000번 요청한건 네트워크는 잘 모르지만 이정도면 모든 ip를 파악할 수 있을 것같은 느낌같은 느낌 때문이다.

마지막에 5000번 요청 중 중복된 ip를 제외한 ip셋을 출력한다.


# url로 ip주소 리스트 가져오기 

import os


ip_hashset = set()


def getIpAddr(url):

    #window : nslookup

    #linux : host

    command = 'nslookup ' + url

    process = os.popen(command)

    results = str(process.read())

    if results.find('Addresses:') > -1 :

        marker = results.find('Addresses:') + 12


        return results[marker:].splitlines()[1].replace(' ', '').replace(' ', '')

    else :

        return ""


def appendHashSet(ipAddr): 

    if (ipAddr in ip_hashset) == False:

        ip_hashset.add(ipAddr)


#ssh.cloud.google.com

domain = 'ssh.cloud.google.com'


for i in range(5000) : 

    ipAddr = getIpAddr(domain)

    print('ipAddr : ', ipAddr)

    appendHashSet(ipAddr)

    

print('ip_hashset : ', ip_hashset)

'IT > 파이썬' 카테고리의 다른 글

[파이참] 기본 단축키  (0) 2019.07.22
[파이참] Server Certificates 오류 해결  (0) 2019.07.22
[Python] if __name__ == "__main__" 의미  (0) 2018.08.17