특정 하위 범위 네트워크 스캔 

 

[ Windows cmd ]

 

for /L %z in (1,1,254) do @ping 192.168.0.%z -w 50 -n 1 | find "TTL" >> scan_result.txt

 

필요에 따라 사용된 옵션은 조정할 수 있으며, 명령 의미는 다음과 같습니다.

단계 코드 의미
1. 스캔 for ... do @ping ...
1번부터 254번까지 모든 IP에 핑을 1번씩 아주 빠르게(0.05초 대기) 보냄
2. 필터 find "TTL"` TTL 문자열이 나온 부분만 확인 
3. 저장 >> scan_result.txt
화면 대신 scan_result.txt라는 파일 맨 끝에 결과를 저장

 

• for: 아래를 반복하라는 의미입니다.

• /L: 숫자를 이용해 반복한다는 옵션입니다.

• %z: 변화하는 숫자를 담을 변수입니다.

• (1,1,254): 1부터 시작해서, 1씩 증가시키며, 254까지 반복합니다.

• do: 아래를 실행하라는 의미입니다.

• ping: 네트워크 연결을 확인하는 도구입니다.

• [옵션] @: 명령 줄 자체를 화면에 출력하지 않고 결과만 보여줍니다 (화면을 깔끔하게 하기 위함).

192.168.0.%z: 이 부분은 %z 자리에 1, 2, 3... 숫자가 들어가며 192.168.0.1 ~ 192.168.0.254까지 변경됩니다.

[옵션] -w 50: 응답을 기다리는 시간입니다. 50ms(0.05초) 기다립니다. 기본값은 4000ms입니다.

[옵션] -n 1: 핑을 1번만 보냅니다. (기본값 4번)

[옵션] | find "TTL" : 결과에 문자열 TTL이 포함된 경우만 찾습니다.

[옵션] >> scan_result.txt : 해당 파일명으로 결과를 저장합니다.

 

[ Linux ]

 

for i in {1..254}; do ping -c 1 -W 1 192.168.0.$i | grep "bytes from"; done >> scan_result.txt

 

리눅스도 실행 구조는 비슷한데, 형식이 다릅니다.

for i in {1..254} : 리눅스의 반복문 형식입니다.

• -W 1 : 리눅스는 초 단위입니다. (1초 지정)

$i : %z 변수 역할입니다.

grep "bytes from" : 리눅스에서는 성공 시 "bytes from"이라는 문구가 뜹니다.

 

 

반응형

+ Recent posts