저는 Linux를 처음 접했으므로 너무 가혹하게 말하지 마세요. :) 저는 현재 ISP와 CGNAT에 속해 있으며 네트워크 외부에서 홈 서버에 연결할 수 있는 유일한 방법은 WAN IP를 통해 액세스하는 것입니다. (이 내용은 라우터 관리 페이지에서 확인할 수 있습니다. 참조) 타이핑해서 찾았어요
traceroute -n 8.8.8.8
그런 다음 세 번째 IP 주소를 복사하여 ping 명령에 입력합니다.
ping -c 3 -R x.x.x.x
WAN IP의 출력을 알려주세요.
해당 WAN IP를 파일에 복사하여 ddclient ddclient.conf의 구성 파일에 붙여넣는 방법을 찾고 있습니다.
내가 달성하려는 목표에 대한 더 우아한 해결책이 있다면 좋을 것입니다!
답변1
ping
and를 사용하는 traceroute
것은 그들이 사용하기 때문에 반드시 도움이 되지는 않습니다.ICMP프로토콜로서 많은 시스템은 보안상의 이유로 ICMP 에코 요청에 응답하지 않도록 구성됩니다. 내 시스템의 예:
pg@TREX:~$ traceroute -n 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
1 192.168.1.1 0.699 ms 0.594 ms 0.800 ms
2 213.243.152.36 25.235 ms * *
3 * * *
4 * * *
5 142.250.169.179 26.723 ms 26.534 ms 26.464 ms
6 142.250.169.178 34.509 ms 34.216 ms 34.234 ms
7 * * *
8 8.8.8.8 21.684 ms 24.621 ms 16.712 ms
별표는 시스템이 응답하지 않음을 나타냅니다.
dig
원하는 것을 쉽게 제공하세요.
pg@TREX:~$ dig +short myip.opendns.com @resolver1.opendns.com
XX.YY.50.178
빈 결과가 나타나면 dig
실행하기 전에 IPv6을 비활성화하십시오.
pg@TREX:~$ ip add show dev enp11s0
2: enp11s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 78:f2:9e:f6:1c:0f brd ff:ff:ff:ff:ff:ff
inet 192.168.1.220/24 brd 192.168.1.255 scope global dynamic noprefixroute enp11s0
valid_lft 86262sec preferred_lft 86262sec
inet6 2001:96ab:c4:3c0a:ec56:2319:9a63:3/128 scope global dynamic noprefixroute
valid_lft 7064sec preferred_lft 3464sec
inet6 fdec:5623:b43a:a2a9:9039:d8ab:961f:bd6c/64 scope global dynamic noprefixroute
valid_lft 7074sec preferred_lft 3474sec
inet6 2001:14bb:a2:6830:28de:50f1:f2db:9ebf/64 scope global dynamic noprefixroute
valid_lft 7074sec preferred_lft 3474sec
inet6 fe80::9f5b:debb:1215:54e2/64 scope link noprefixroute
valid_lft forever preferred_lft forever
pg@TREX:~$ dig +short myip.opendns.com @resolver1.opendns.com
pg@TREX:~$
답변2
인터넷에는 귀하가 연결된 IP 주소를 알려주는 여러 사이트가 있습니다. 내가 유용하다고 생각한 것 중 하나는http://ifconfig.me(이것은 http 또는 https 프로토콜에서 작동합니다. 브라우저에서 이를 보면 브라우저 및 명령줄 사용 지침에 대한 세부 정보와 함께 IP 주소가 표시됩니다.)
명령줄에서 IP 가져오기를 사용할 수 있습니다 curl
. 예를 들어
curl ifconfig.me
그러면 IP 주소만 반환되고 HTML은 반환되지 않으며 IP 다음에는 개행 문자도 반환되지 않습니다.
다음과 같은 간단한 래퍼 스크립트와 함께 사용합니다.
$ cat /usr/local/bin/what-is-my-ip.sh
#!/bin/sh
unset http_proxy
unset https_proxy
curl ifconfig.me
echo