개념 사전 · 프로토콜

PPP

Point-to-Point Protocol · 점대점 프로토콜

는 두 종단의 점대점 링크에서 여러 네트워크 계층 프로토콜을 운반하는 데이터 링크 프로토콜이다. 로 링크 옵션을 협상하고 선택적 인증 뒤 로 · 등 상위 설정을 준비한다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

01무엇이고, 어떤 일을 하나

  • 프레임 경계·Protocol 필드·FCS로 링크에서 여러 상위 프로토콜을 구분해 전달한다.
  • 양방향 협상으로 ·인증 등 각 수신 방향에 필요한 조건을 합의한다.
  • ·과 ·를 연결해 인증과 네트워크 계층 준비를 별도 단계로 관리한다.

02어떤 순서로 동작하나

  1. 각 피어의 요청

    링크가 준비되면 양쪽이 로 요구하는 옵션을 보낸다.

  2. Ack·Nak·Reject 판정

    수용하면 , 값 변경을 요구하면 , 받아들이지 않는 옵션이면 로 답한다. Ack는 요청 내용과 대응해야 한다.

  3. 요청 수정·재교환

    Nak·Reject를 받은 피어는 필요한 옵션을 바꿔 다시 요청할 수 있다. 한 방향의 Ack만으로 전체 협상이 끝나지 않는다.

  4. 양방향

    서로의 요구 조건을 처리하여 가 에 도달한다. 이후 합의한 인증 및 네트워크 계층 협상으로 진행한다.

  5. 인증과

    에서 인증을 합의했다면 · 등 해당 교환을 수행한다. 이어 · 같은 가 네트워크 계층의 옵션을 준비하며, 하나로 주소·상위 프로토콜까지 모두 준비된 것은 아니다.

  6. 데이터와 종료

    열린 네트워크 프로토콜의 데이터를 Protocol 필드로 구분해 운반한다. 종료 요청이나 링크 실패가 생기면 제어 프로토콜 상태와 네트워크 계층 사용을 정리한다.

03먼저 알아둘 용어와 구성요소

Link Control Protocol이다. 링크의 형식·옵션·사용 가능 상태를 협상하고 유지하는 프로토콜이다.
Network Control Protocol 계열이다. 위에 실을 각 네트워크 계층 프로토콜의 옵션을 협상한다.
Maximum Receive Unit이다. 가 수신할 정보 필드 크기를 협상하는 옵션이다.
제안된 옵션을 그대로 수락하는 메시지다.
Control Protocol이다. 에서 관련 옵션을 협상하는 다.
Control Protocol이다. 에서 인터페이스 식별자 등 필요한 옵션을 협상하는 다.
제어 프로토콜이 원하는 옵션 값을 제안하는 메시지다.
옵션 자체는 이해하지만 다른 값을 요청하는 메시지다.
해당 옵션을 인정하거나 처리할 수 없어 제외를 요구하는 메시지다.
Protocol Field Compression이다. 가능한 경우 프로토콜 필드 길이를 줄이는 옵션이다.
Address and Control Field Compression이다. 의 고정적인 Address·Control 필드를 생략하도록 협상하는 옵션이다.
이름과 비밀번호를 보내 검증받는 인증 방식이다. 그 자체로 비밀번호 기밀성을 제공하지 않는다.
검증자가 보낸 challenge에 공유 비밀로 계산한 response를 돌려주는 인증 방식이다.
나 가 필요한 구성 교환을 완료한 상태다. 하나의 제어 프로토콜이 라고 모든 상위 서비스가 준비된 것은 아니다.
제어 프로토콜이 를 보냈지만 양방향 협상이 아직 완료되지 않은 상태다.
LEARN THROUGH PRACTICE

PPP 링크에서 CHAP 인증과 IP 사용 준비를 구분하기

Serial 링크의 상태와 로그를 대조하여 회선 설정·인증·네트워크 계층 준비를 순서대로 확인한다.

실습 구성과 전제

  • R3와 R4의 Serial1/0을 연결하고 양쪽에 캡슐화를 설정하는 실습이다.
  • 양쪽에 상대 이름을 인식할 인증 정보가 준비되어 있어야 한다. 예시에는 인증 비밀값을 넣지 않는다.
  1. 양단 캡슐화와 LCP부터 맞춘다

    • 한쪽이 HDLC이고 다른 쪽이 이면 물리적으로 연결되어도 정상적인 협상이 성립하지 않는다. 양단에서 encapsulation 를 맞추고 인터페이스 상태를 확인한다.
    • 화면에는 up/up, Encapsulation , Open이 보인다. 이 부분만으로 다른 네트워크까지 이 완성되었다고 판단할 수는 없다.
    text
    interface Serial1/0
     encapsulation ppp
     no shutdown
    end
    show interfaces Serial1/0

    실습 흐름을 재구성한 명령 예시. 장치·인터페이스 이름은 구성에 맞춰 사용한다.

    PAP, CHAP · 명령·상태 출력 14원본 크기로 보기 ↗
    • Serial1/0 is up, line protocol is up으로 표시된다.
    • Encapsulation PPP, LCP Open이 보이며 IPv4 주소와 MTU 1500도 함께 나온다.
    확인 기준

    먼저 양단의 · 상태가 맞는지 본다. 가 열리지 않았다면 IP 경로를 추가하기 전에 회선과 캡슐화를 확인한다.

  2. Challenge·Response·Success를 방향별로 읽는다

    • 양방향 인증에서는 각 장비가 독립적으로 Challenge를 보내므로 두 교환이 섞인다. 로그의 O는 송신, I는 수신이며 id로 같은 인증 교환을 연결한다.
    • 화면은 송신 Challenge id 9와 수신 Response id 9, 수신 Challenge id 3과 송신 Response id 3을 보여 준다. 비밀값 자체가 전송되는 와 달리 은 Challenge에 대한 응답을 검증한다.
    text
    interface Serial1/0
     ppp authentication chap
    end
    show interfaces Serial1/0
    show logging

    상대 이름과 인증 정보가 먼저 구성되었다는 조건의 명령이다. 화면은 기존 실습 로그이며 추가 debug 실행을 요구하지 않는다.

    PAP, CHAP · 명령·상태 출력 16원본 크기로 보기 ↗
    • O CHALLENGE id 9와 I RESPONSE id 9가 보인다.
    • I CHALLENGE id 3·O RESPONSE id 3·I SUCCESS id 3 및 O SUCCESS id 9가 함께 기록되어 있다.
    확인 기준

    한 방향의 Success만 보지 말고 요구한 양방향 인증이 모두 완료되는지 확인한다. 성공은 데이터 암호화 성공이라는 뜻이 아니다.

  3. 인증 뒤 NCP와 실제 IP 전달을 검증한다

    • 의 링크 확립과 선택적 인증이 끝나면 는 같은 를 통해 준비된다. 로그의 AUTHOR 요청은 과정의 증거이지 Open 자체를 대신하는 표시는 아니다.
    • 확장된 인터페이스 출력에서 상태를 확인하고 같은 링크의 상대 주소로 ping한 뒤 원격 경로를 확인한다. 실패 시 인증 실패와 경로·반환 경로 문제를 분리한다.
    text
    show interfaces Serial1/0
    show ip interface brief
    show ip route

    실습 흐름을 재구성한 명령 예시. 장치·인터페이스 이름은 구성에 맞춰 사용한다.

    확인 기준

    현재 캡처에는 IP ping의 최종 성공 횟수가 없다. 와 성공 범위를 넘어서 종단 통신 성공을 주장하지 않는다.

실습에서 확인한 동작 원리

  • 상태는 → 선택적 인증 → → 실제 패킷 전달로 나누어 확인한다.
  • 은 인증이며 사용자 데이터의 기밀성을 자동 제공하지 않는다.
관련 개념·전체 실습 화면 이어서 읽기 →
동작·명령 참고 문서

04예제로 따라가기

  • Code=1, Identifier=7이며 =1500과 -MD5 인증을 요청하는 역사적 형식 해석 예다. 인증 알고리즘 선택을 운영 환경에 권장하는 예시는 아니다. 옵션은 Type=1, Length=4, 값 1500=0x05dc이므로 01 04 05 dc다. Length는 값만의 2바이트가 아니라 Type·Length를 포함한 옵션 전체 크기다.
  • 인증 옵션은 Type=3, Length=5, Protocol=0xc223, Algorithm=5이므로 03 05 c2 23 05다. 앞의 와 합친 옵션은 9바이트다. Code·ID·Length의 4바이트를 더하면 Length=13=0x000d다. 내용은 01 07 00 0d 01 04 05 dc 03 05 c2 23 05이며 Protocol·FCS·Flag는 이 13에 포함하지 않는다.
  • Ack는 Code만 2로 바꾸고 Identifier와 옵션 내용을 정확히 일치시켜야 한다. 를 1492로 바꿔 제안한다면 원래 요청의 Ack가 아니라 Nak이며 송신자가 새 Request로 협상을 이어간다.

05혼동하기 쉬운 점과 확인 기준

  • 를 보냈지만 유효한 Ack 교환이 완성되지 않은 상태다. 물리 링크, 상대 캡슐화, 옵션 거부·재협상 내용을 먼저 연결한다.
  • 상대 요청에는 Ack를 보냈지만 내 요청에 대한 Ack를 아직 받지 못한 상태다. 한 방향 설정만 수용된 상황과 양방향 를 구분한다.
  • 가 여도 요구된 인증에 실패하면 네트워크 계층 설정으로 진행하지 못한다. 인증 요청 방향·계정 식별·지원 방식이 맞는지 분석하되 실제 비밀값을 로그 설명에 복제하지 않는다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.