#!/bin/bash

#HOST 굳이 수정하지 않아도 됨
#자신의 도메인으로 사용시 클라우드 기능이 켜져있어야 합니다.(구름켜기)
host='https://www.cloudflare.com'

cloudflare=`curl -s ${host}/cdn-cgi/trace`
re='ip=([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)'
if [[ $cloudflare =~ $re ]]; then
  ip=${BASH_REMATCH[1]};
fi
echo $ip

 

 

집에서 서버 돌릴 때 외부 주소를 알아오게 하는 스크립트입니다.

 

ipecho.net같은 곳을 이용하는 것도 방법도 있긴 하지만,

좀더 안정적인(?) 곳이 없을까하다가 클라우드플레어 cdn-cgi/trace의 접속 ip가 뜨는 것을 보고

한번 쉘스크립트로 짜봤습니다.(쉘은 정규식이 어렵네요 ㅠㅠ 구글링 열심히 했습니다.)

 

 

단, host 부분을 수정할 경우 클라우드 기능(구름켜기)을 사용하지 않을 경우 사용이 불가능합니다.

 

 

하늘희

profile
てててててて
  • ?
    외부주소를 알아야하는 이유가 있는지 궁금해요 이것을 활용해서 어디에 사용할수있나요? 궁금합니당~~~
  • ? profile
    공유기를 사용하지 않으면 서버 IP가 공인IP이지만,

    공유기를 사용하면 서버 IP는 외부IP가 됩니다.

    외부 IP가 절대 변경되지 않는 고정IP라면 상관 없으나, 가정집 같이 유동IP의 경우 위의 팁으로 서버 IP를 매치할 현재 IP주소를 알아내어 업데이트 할 수 있습니다.
  • profile
    저는 여기를 즐겨 씁니다. https://icanhazip.com/