Ping10 [Linux 셸 스크립트] bash - 125 for 반복문을 간단히 작성하기 1. 사용 명령어 (1) ping (2) echo 2. 키워드 & 사용처 (1) 키워드 브레이스 확장, bash (2) 사용처 IP 주소 목록 등을 브레이스 확장으로 간단히 작성하고 싶을 때 사용합니다. 3. 실행 예제 $ ./bash-brace.sh [OK] Ping -> 192.168.2.1 [OK] Ping -> 192.168.2.2 [OK] Ping -> 192.168.2.3 [OK] Ping -> 192.168.2.4 [OK] Ping -> 192.168.2.5 4. 스크립트 #!/bin/bash # bash 브레이스 확장 {}으로 IP 주소 목록 작성 for ipaddr in 192.168.2.{1..5} ① do ping -c 1 "$ipaddr" > /dev/null 2>&1 if [ $?.. 2021. 7. 6. [Linux 셸 스크립트] 서버 관리 - 114 서버 ping 감시하기 1. 사용 명령어 (1) ping (2) sleep (3) date 2. 키워드 & 사용처 (1) 키워드 서버 감시, 네트워크 종료 스테이터스 (2) 사용처 네트워크 상태가 이상하지 않은지 도는 서버가 정지했느닞 ping 명령어로 감시하고 싶을 때 사용합니다. 3. 실행 예제 #$ ./ping_alert.sh 192.168.2.1 [2021/05/12 13:43:12] Ping OK: 192.168.2.1 4. 스크립트 #!/bin/sh # ping 실행 결과 스테이터스 0이면 성공이므로 1로 초기화 result=1 ① # 대상 서버가 명령행 인수로 지정되지 않으면 에러 종료 if [ -z "$1" ]; then ② echo "대상 호스트를 지정하세요." >&2 ② exit 1 ② fi # ping 명령.. 2021. 5. 12. [Linux 셸 스크립트] 제어 구문 - 098 변수가 포함된 IP 주소 목록 파일을 읽어서 ping 명령어로 확인하기 1. 사용 명령어 (1) sed (2) ping 2. 키워드 & 사용처 (1) 키워드 for문, 템플릿 파일, 치환, 변수 (2) 사용처 템플릿 파일을 사용해서 네트워크 개통을 확인하고 싶을 때 사용합니다. 3. 실행 예제 $ cat ping_target.lst %ADDR_HEAD%.1 %ADDR_HEAD%.2 %ADDR_HEAD%.3 %ADDR_HEAD%.4 $ ./for_command.sh 192.168.2 [Success] ping -> 192.168.2.1 [Success] ping -> 192.168.2.2 [Failed] ping -> 192.168.2.3 [Success] ping -> 192.168.2.4 4. 스크립트 #!/bin/sh # 명령행 인수 확인 if [ -z "$1" ]; t.. 2021. 4. 19. [Linux 셸 스크립트] 셸 기능 다루기 - 096 여러 호스트에 병렬로 ping을 날려서 대기 시간 줄이기 1. 사용 명령어 (1) ping (2) wait (3) cat 2. 키워드 & 사용처 (1) 키워드 병렬 처리, 동기, 종료 (2) 사용처 여러 호스트에 ping 명령어를 실행하는 대기 시간을 줄이고자 병렬로 백그라운드 실행시키고 명령어 종료를 동기화해서 결과를 순서대로 출력하고 싶을 때 사용합니다. 3. 실행 예제 $ ./background-wait.sh PING 192.168.2.1 (192.168.2.1): 56 data bytes 64 bytes from 192.168.2.1: icmp_seq=0 ttl=255 time=3.554 ms 64 bytes from 192.168.2.1: icmp_seq=0 ttl=255 time=3.435 ms 64 bytes from 192.168.2.1: icm.. 2021. 4. 19. [Linux 셸 스크립트] 네트워크 - 067 로컬 셸 스크립트 파일을 원격 호스트에서 그대로 실행하기 1. 사용 명령어 (1) cat (2) ssh (3) hostname (4) ping 2. 키워드 & 사용처 (1) 키워드 SSH, 원격 호스트 (2) 사용처 로컬에 있는 셸 스크립트를 접속한 곳에 복사하지 않고 ssh로 실행하고 싶을 때 사용합니다. 3. 실행 예제 $ ./script-remote.sh server04 Ping to 192.168.2.35 : [OK] server05 Ping to 192.168.2.35 : [NG] server06 Ping to 192.168.2.35 : [OK] 4. 스크립트 #!/bin/sh username="park" script="check.sh" cat $script | ssh ${username}@192.168.2.4 "sh" ① cat $script | s.. 2021. 4. 7. [Linux 셸 스크립트] 네트워크 - 066 IP 주소에 따른 처리 분기를 case문으로 작성하기 1. 사용 명령어 (1) case (2) ping 2. 키워드 & 사용처 (1) 키워드 IP 주소, 분기, 일치, 문자열 (2) 사용처 IP 주소마다 다른 처리를 하도록 간단히 분기하고 싶을 때 사용합니다. 3. 실행 예제 $ ./ipmatch.sh 192.168.2.1 Ping to 192.168.2.1 : [OK] $ ./ipmatch.sh 192.168.3.1 192.168.3.1 테스트 대상이 아닙니다. 4. 스크립트 #!/bin/sh # 대상 IP 주소르르 명령행 인수로 지정하지 않으면 에러 표시 후 종료 if [ -z "$1" ]; then ① echo "IP 주소를 지정하세요." >&2 ① exit 1 ① fi # 대상 네트워크라면 ping 명령어 실행 case "$1" in 192.168... 2021. 4. 7. [Linux 셸 스크립트] 네트워크 - 057 ping으로 특정 호스트 응답 평균 시간을 취득하기 1. 사용 명령어 (1) ping (2) sed (3) awk 2. 키워드 & 사용처 (1) 키워드 ICMP, 응답 속도, 평균값 (2) 사용처 특정 서버와 통신 상태를 조사하고 싶을 때 사용합니다. 3. 실행 예제 $ ./pingavg.sh Ping to: 192.168.2.1 Ping count: 10 Ping average[ms]: 38.79 4. 스크립트 #!/bin/sh ipaddr="192.168.2.1" ① count=10 ① echo "Ping to: $ipaddr" ② echo "Ping count: $count" ② echo "Ping average[ms]:" ② # ping 명령어 실행 결과를 임시 파일에 출력 ping -c $count $ipaddr > ping.$$ ③ # "tim.. 2021. 3. 30. [Linux 셸 스크립트] 네트워크 - 056 디폴트 게이트웨이에 ping이 통하는지 확인하기(FreeBSD/Mac) 1. 사용 명령어 (1) netstat (2) awk (3) ping 2. 키워드 & 사용처 (1) 키워드 ping, ICMP, 디폴트 게이트웨이 (2) 사용처 디폴트 게이트웨이를 자동으로 얻어서 ping 명령어로 네트워크 연결을 확인하고 싶을 때 사용합니다. 3. 실행 예제 $ ./gwping-bsd.sh [Success] ping -> 192.168.1.1 4. 스크립트 #!/bin/sh # netstat 명령어 출력에서 디폴트 게이트웨이 얻기 # 첫 번째 컬럼이 default인 줄의 두 번째 컬럼 추출 gateway=$(netstat -nr | awk '$1 == "default" {print $2}') ① # 디폴트 게이트웨이에 ping ping -c 1 $gateway > /dev/null 2>.. 2021. 3. 30. [Linux 셸 스크립트] 네트워크 - 055 디폴트 게이트웨이에 ping이 통하는지 확인하기(리눅스) 1. 사용 명령어 (1) route (2) awk (3) ping 2. 키워드 & 사용처 (1) 키워드 ICMP, 디폴트 게이트웨이, Default Gateway (2) 사용처 디폴트 게이트웨이르르 자동으로 얻어서 ping 명령어로 네트워크 연결을 확인하고 싶을 때 사용합니다. 3. 실행 예제 $ ./gwping-linux.sh [Syccess] ping -> 192.168.1.1 4. 스크립트 #!/bin/sh # route 명령어 출력에서 디폴트 게이트웨이 얻기 # 첫 번째 컬럼이 "0.0.0.0"인 줄의 두 번째 컬럼을 추출 gateway=$(route -n | awk '$1 == "0.0.0.0" {print $2}') ① # 디폴트 게이트웨이에 ping ping -c 1 $gateway > /d.. 2021. 3. 29. [RHEL6] 네트워크 명령어 5탄(netstat, nslookup, ntpdate, ping) 14. netstat(네트워크 상황 출력) 1) 경로 : /bin/netstat 2) 요약 : 네트워크의 연결과 포트를 출력 3) 사용 방법 : netstat [-vWeenNcCF] [] -r netstat {-V|--version|-h|--help} netstat [-vWnNcaeol] [ ...] netstat {[-vWeenNac] -i | [-cWnNe] -M | -s } 4) 첫번째 인자 -r, --route : 라우팅 테이블을 출력 -i, --interfaces : 인터페이스 테이블을 출력 -g, --groups : 멀티캐스트 그룹을 숫자 형태로 출력 -s, --statistics : 네트워킹 통계를 출력 -M, --masquerade : 매스커레이트 상태를 출력 5) 옵션 -v, --verb.. 2020. 1. 23. 이전 1 다음