이 머신이 어떤 주소를 가지고, 어디로 나가는지, 어떤 포트가 열려 있는지, 이름과 웹 서버가 응답하는지를 확인하는 명령이다.
주소와 경로
ip addr
ip -br addr
ip route`ip addr`은 인터페이스와 그 주소다. `lo`는 자기 자신만 가리키는 루프백이다. `-br`은 한 줄로 줄인 목록이다.
`ip route`에서 `default`로 시작하는 줄이 기본 게이트웨이다. 그 주소로 바깥 통신이 나간다. 인터페이스 이름은 `dev` 뒤에 있다.
ping
ping -c 4 1.1.1.1
ping -c 4 example.com`-c`는 보낼 횟수다. 없으면 Ctrl-c로 멈출 때까지 보낸다. 숫자 주소에 응답하고 이름에는 응답하지 않으면 이름 해석을 의심한다. 이름은 풀리는데 응답이 없으면 경로나 방화벽, 상대의 응답 정책을 의심한다. ping을 막아 둔 서버도 많다.
소켓
ss는 지금 열려 있는 소켓을 보여 준다.
ss -lnt
ss -lntup
ss -ant`-l`은 연결을 기다리는 소켓, `-n`은 포트 번호를 이름으로 바꾸지 않음, `-t`는 TCP, `-u`는 UDP다. `-p`는 그 소켓의 프로세스다. 다른 사용자의 프로세스 이름은 root 권한이 있어야 보인다. `-a`는 기다리는 소켓만이 아니라 이미 연결된 소켓까지 포함한다.
`0.0.0.0`이나 `*`로 기다리는 포트는 그 프로토콜에서 모든 인터페이스를 향해 열려 있다. `127.0.0.1`만 있으면 이 머신 안에서만 연결된다.
이름과 HTTP
getent hosts example.com
curl -I https://example.com
curl -fsS -o page.html https://example.comgetent hosts는 이 시스템의 이름 해석 결과다. `/etc/hosts`와 DNS 설정을 그대로 탄다.
`curl -I`는 본문 없이 헤더만 받는다. `-f`는 서버가 오류 상태를 주면 실패로 끝낸다. `-sS`는 진행 표시는 끄고 오류 메시지는 남긴다. `-o`는 저장할 파일 이름이다.
COMMENTS
댓글 0
이 글에 대한 의견이나 질문을 남겨 주세요.
댓글은 구글이나 카카오로 시작한 뒤에 남길 수 있습니다.
등록된 댓글이 없습니다.