config 파일에서 가장 결과가 큰 한 줄은 bind 하는 host. 솔로 개발자의 "나 털렸어" 스토리 거의 다 여기서 잘못된 선택으로 시작해. 세 값이 99% 케이스 cover 하고, 와일드하게 달라.
| Bind 주소 | 의미 | 도달 가능한 사람 |
|---|---|---|
127.0.0.1 (loopback) | "이 머신만" | 같은 OS 의 프로세스만 |
192.168.1.42 (특정 LAN IP) | "이 LAN 주소로 도달" | 같은 LAN 의 IP 아는 디바이스 |
100.64.x.x (Tailscale CGNAT 범위) | "Tailscale 통해서만 도달" | tailnet 안 디바이스 (WireGuard handshake 후) |
0.0.0.0 (모든 interface) | "public 포함 모든 NIC 에 listen" | 이 host 가진 어떤 IP 로든 패킷 라우트 가능한 누구나 |
0.0.0.0 이 진짜로 뭘 하는지
OS 한테 "이 머신이 가진 아무 interface 에서든 connection 받아" 라고 말해. Wi-Fi NIC 하나 있는 보통 home 맥은 host 가:
127.0.0.1(loopback) — 내부만.192.168.1.42(Wi-Fi LAN) — 라우터 클라이언트에서 도달.100.64.0.5(Tailscale) — tailnet 통해 도달.- ISP 가 IPv6 주고 firewall 안 막으면 잠재적 public IPv6.
0.0.0.0 으로 bind 하면 서비스가 넷 다에 응답. 라우터에 UPnP 켜져 있고 (기본 켜짐) inbound rule 나타나는 순간 (날 수 있음), 네 "local" 서비스는 public 인터넷에 있어.