L2TP(Layer 2 Tunneling Protocol)
L2TP(Layer 2 Tunneling Protocol)는 레이어 3 네트워크에서 레이어 2 트래픽을 터널링하는 프로토콜입니다. L2TP를 사용하여 네트워크 내에서 PPP(Point-to-Point Protocol) 터널링을 활성화할 수 있습니다.
L2TP에는 L2TP LAC(Access Concentrator) 및 L2TP 네트워크 서버(LNS)가 필요합니다. LNS는 L2TP 터널의 단말 장치 중 하나입니다. 액세스 디바이스에 구성된 LAC는 원격 클라이언트로부터 패킷을 수신하여 원격 네트워크에서 LNS로 전달합니다. LAC와 LNS는 피어(peers)입니다.
가입자 액세스를 위해 L2TP를 구성하는 방법에 대한 자세한 내용은 가입자 액세스를 위한 L2TP 개요를 참조하십시오.
최소 L2TP 구성
L2TP에 대한 최소 구성을 정의하려면 계층 수준에서 최소한 다음 명령문을 [edit access]
포함합니다.
[edit access] address-pool pool-name { address address-or-prefix; address-range low <lower-limit> high <upper-limit>; } profile profile-name { authentication-order [ authentication-methods ]; client client-name { chap-secret chap-secret; l2tp { interface-id interface-id; maximum-sessions-per-tunnel number; ppp-authentication (chap | pap); shared-secret shared-secret; } pap-password pap-password; ppp { framed-ip-address ip-address; framed-pool framed-pool; interface-id interface-id; primary-dns primary-dns; primary-wins primary-wins; secondary-dns secondary-dns; secondary-wins secondary-wins; } } } radius-server server-address { accounting-port port-number; port port-number; retry attempts; secret password; }
LNS가 RADIUS 인증으로 구성되면 기본 동작은 선호하는 RADIUS 할당 IP 주소를 받아들이는 것입니다. 이전에는 IPCP(Internet Protocol Control Protocol) 구성 요청 패킷에서 수신된 비제로 피어 IP 주소를 수락하고 설치하는 것이 기본 동작이었습니다.
L2TP 프로파일
L2TP용 프로파일을 구성합니다.
여러 유형의 프로파일이 구성되면 운영 체제는 하나의 구성만 구현합니다. 운영 체제는 다음과 같이 우선 순위를 지정하며 다른 [edit access profile profile-name]
모든 프로필 구성을 무시합니다.
[edit access profile profile-name]
[edit access group-profile profile-name]
[edit access profile profile-name user-group-profile profile-name]
액세스 프로파일
L2TP 연결 및 세션 요청을 검증하기 위해 계층 수준에서 프로필 문을 구성하여 액세스 프로파일을 [edit access]
설정합니다. 여러 프로필을 구성할 수 있습니다. 또한 각 프로필에 대해 여러 클라이언트를 구성할 수도 있습니다.
L2TP 클라이언트 구성
클라이언트를 구성하려면 계층 수준의 명령문을 [edit access profile profile-name]
포함합니다client
.
[edit access profile profile-name] client client-name;
client-name
피어 아이덴티티입니다.
L2TP의 경우, 선택적으로 와일드카드(*
)를 사용하여 기본 터널 클라이언트를 정의하여 동일한 암호 및 L2TP 속성을 가진 여러 MIC를 인증할 수 있습니다. 특정 이름을 가진 LAC가 구성에 정의되지 않은 경우 와일드카드 터널 클라이언트가 인증합니다.
기본 클라이언트 구성의 *
경우는 M 시리즈 라우터에만 적용됩니다. MX 시리즈 라우터에서 대신 사용하십시오 default
. MX 시리즈 라우터에 대한 자세한 내용은 L2TP LNS 인라인 서비스 인터페이스 를 참조하십시오.
클라이언트별 프로필
클라이언트별 프로파일에 대한 L2TP 속성을 정의하려면 계층 수준에서 하나 이상의 명령문을 [edit access profile profile-name client client-name l2tp]
포함합니다.
프로필을 구성하면 L2TP 또는 PPP 매개변수를 구성할 수 있지만 동시에 둘 다 구성할 수는 없습니다.
[edit access profile profile-name client client-name l2tp] interface-id interface-id; lcp-renegotiation; local-chap; maximum-sessions-per-tunnel number; multilink { drop-timeout milliseconds; fragment-threshold bytes; } ppp-authentication (chap | pap); shared-secret shared-secret;
interface-id
(명령문에서 interface-id
)는 계층 수준에서 구성된 L2TP 세션을 나타내는 인터페이스의 [edit interfaces interface-name unit local-unit-number dial-options]
식별자입니다.
number
(명령문에서 maximum-sessions-per-tunnel
)는 L2TP 터널을 위한 최대 세션 개수입니다.
shared-secret
(성명서) shared-secret
는 피어를 인증하는 공유 암호입니다.
PPP 인증(명령문)을 ppp-authentication
지정할 수 있습니다. 기본적으로 PPP 인증은 CHAP를 사용합니다. 이를 구성하여 PAP(Password Authentication Protocol)를 사용할 수 있습니다.
LNS를 구성할 수 있으므로 PPP 클라이언트와 LCP를 재협상합니다( lcp-negotiation
명령문). 기본적으로 PPP 클라이언트는 LAC와 LCP를 협상합니다. 이 작업을 수행하면 LNS는 마지막으로 전송된 LCP 구성 요청을 폐기하고 마지막으로 LAC로부터 LCP 구성 요청 AVP를 수신합니다. 예를 들어, LCP는 PPP 클라이언트와 LAC 간에 협상했습니다.
LNS가 LAC의 프록시 인증 AVP를 무시하고 CHAP 챌린지를 사용하여 PPP 클라이언트를 재인증할 수 있도록 Junos OS를 구성할 수 있습니다( local-chap
명령문). 기본적으로 PPP 클라이언트는 LNS에 의해 재인증되지 않습니다. 이 경우 LNS는 PPP 클라이언트를 직접 인증합니다.
LAC에서 LNS로 들어오는 PPP 세션이 멀티링크 PPP를 협상한 경우 L2TP를 위한 PPP MP를 구성할 수 있습니다. 이렇게 하면 단말 장치 차별을 기반으로 멀티링크 번들에 연결됩니다( multilink
성명서).
-
milliseconds
(명령문에서drop-timeout
)는 리셈블리 큐의 첫 번째 패킷 조각과 연관된 타임아웃에 대한 밀리초의 수를 지정합니다. 모든 패킷 조각이 수집되기 전에 타임아웃이 만료되면 Reassembly 큐의 시작 부분에 있는 패킷 조각은 삭제됩니다. 드롭 타임아웃이 지정되지 않은 경우, Junos OS는 패킷을 유지합니다(멀티링크 assembly 알고리즘이 섀시 큐의 패킷에 속하는 다른 패킷 조각이 손실되었음을 판단하는 경우 패킷 조각은 여전히 삭제될 수 있음).참고:번들 멀티링크의 드롭 타임아웃 및 단편화 임계값은 서로 다른 터널에 속할 수 있습니다. 각 터널에 드롭 타임아웃과 단편화 임계값이 다를 수 있습니다. L2TP 터널이 있을 때 프로파일 대신 그룹 프로파일을 구성하는 것이 좋습니다.
-
bytes
패킷의 최대 크기(명령문)를 바이트 단위로fragment-threshold
지정합니다. 패킷이 단편화 임계값을 초과하는 경우, Junos OS는 패킷을 두 개 이상의 멀티링크 패킷 조각으로 단편화합니다.
예: 기본 터널 클라이언트 정의
[edit access profile profile-name] client * { l2tp { interface-id interface1; lcp-renegotiation; local-chap; maximum-sessions-per-tunnel 500; ppp-authentication chap; shared-secret "$ABC123"; } }
모든 터널 클라이언트의 경우 사용자 그룹 프로파일을 사용하여 터널을 통해 들어오는 모든 사용자에 대한 기본 PPP 속성을 정의할 수 있습니다. 사용자 그룹 프로파일은 PPP 속성을 정의해야 합니다. 사용자 그룹 프로파일이 지정되면 모든 사용자(PPP 세션)는 사용자 그룹 프로파일에 지정된 PPP 속성을 사용합니다. 로컬 또는 RADIUS 서버에 지정된 PPP 속성이 사용자 그룹 프로파일에 지정된 속성보다 우선합니다.
선택적으로 와일드카드 클라이언트를 사용하여 사용자 그룹 프로필을 정의할 수 있습니다. 이 작업을 수행할 때 이 터널에 입력하는 모든 클라이언트는 PPP 속성(정의된 사용자 그룹 프로파일 속성)을 기본 PPP 속성으로 사용합니다.
액세스 프로파일 구성
프로필을 구성할 때 L2TP 또는 PPP 매개변수만 구성할 수 있습니다. 동시에 둘 다 구성할 수 없습니다.
자세한 내용은
예: 액세스 프로파일 구성
다음 예에서는 액세스 프로파일의 구성을 보여 주십시오.
[edit access] profile westcoast_bldg_1 { client white { chap-secret "$ABC123"; # SECRET-DATA ppp { idle-timeout 22; primary-dns 198.51.100.10; framed-ip-address 198.51.100.12/24; } group-profile westcoast_users; } client blue { chap-secret "$ABC123"; # SECRET-DATA group-profile sunnyvale_users; } authentication-order password; } profile westcoast_bldg_1_tunnel { client test { l2tp { shared-secret "$ABC123"; # SECRET-DATA maximum-sessions-per-tunnel 75; ppp-authentication chap; } group-profile westcoast_tunnel; } client production { l2tp { shared-secret "$ABC123”; # SECRET-DATA ppp-authentication chap; } group-profile westcoast_tunnel; } }
그룹 프로필
선택적으로 그룹 프로파일을 구성할 수 있습니다. 구성된 그룹 프로필을 참조하는 모든 클라이언트는 모든 그룹 프로파일 속성을 상속합니다. 이를 통해 L2TP를 더 큰 규모로 쉽게 적용할 수 있습니다.
그룹 프로파일에 대한 L2TP를 구성하려면 계층 수준에서 다음 문을 [edit access group-profile profile-name l2tp]
포함합니다.
[edit access group-profile profile-name l2p] interface-id interface-id; lcp-renegotiation; local-chap; maximum-sessions-per-tunnel number;
interface-id
계층 수준에서 구성된 L2TP 세션을 나타내는 인터페이스의 [edit interfaces interface-name unit local-unit-number dial-options]
식별자입니다.
LNS를 구성하여 PPP 클라이언트(명령문)와 LCP(Link Control Protocol)를 재협상할 renegotiation
수 있습니다. 기본적으로 PPP 클라이언트는 L2TP LAC(Access Concentrator)와 LCP를 협상합니다. 이 작업을 수행하면 LNS는 LAC에서 마지막으로 보낸 LCP 구성 요청 속성 값 쌍(AVP)을 폐기하고, 예를 들어, LCP는 PPP 클라이언트와 LAC 간에 협상했습니다.
LNS가 LAC의 프록시 인증 AVP를 무시하고 CHAP 챌린지를 사용하여 PPP 클라이언트를 재인증할 수 있도록 Junos OS를 구성할 수 있습니다( local-chap
명령문). 이 경우 LNS는 PPP 클라이언트를 직접 인증합니다. 기본적으로 PPP 클라이언트는 LNS에 의해 재인증되지 않습니다.
number
L2TP 터널당 최대 세션 개수입니다.
L2TP 프로파일에서 그룹 프로파일 참조
L2TP 터널 프로파일에서 구성된 그룹 프로필을 참조할 수 있습니다.
계층 수준에서 구성된 [edit access group-profile profile-name]
그룹 프로필을 참조하려면 계층 수준의 명령문을 [edit access profile profile-name client client-name]
포함합니다group-profile
.
[edit access profile profile-name client client-name] group-profile profile-name;
profile-name
PPP 사용자 프로필에서 구성된 그룹 프로필을 참조합니다.
예: L2TP용 PPP MP
[edit access] profile tunnel-profile { client remote-host { l2tp { multilink { drop-timeout 600; fragmentation-threshold 100; } } } }
L2TP 인증 구성
L2TP에는 인증 방법이 포함되어 있지 않으므로 유연하고 원하는 보안 기능과 함께 사용할 수 있습니다. L2TP 프로필에 대한 PPP 속성을 구성할 때 일반적으로 명령문 또는 pap-password
명령문을 구성합니다chap-secret
.
L2TP 프로필에 대한 CHAP 암호 구성
CHAP 는 PPP 링크의 각 끝이 RFC 1994에 정의된 피어를 인증할 수 있도록 지원합니다. 인증자는 피어에게 단방향 해시를 사용하여 암호화해야 하는 임의로 생성된 과제를 피어에게 보냅니다. 피어는 암호화된 결과로 응답해야 합니다. 해시의 열쇠는 인증자 및 인증자에게만 알려진 비밀입니다. 응답이 수신되면 인증자가 계산된 결과를 동료의 응답과 비교합니다. 일치하면 피어가 인증됩니다.
링크의 각 끝은 CHAP 챌린지에 이름을 포함시키고 피어에게 보내는 응답 패킷에 포함함으로써 피어에 대해 스스로를 식별합니다. 이 이름은 로컬 호스트 이름에 기본으로 지정되거나 옵션을 사용하여 local-name
명시적으로 설정할 수 있습니다. 호스트가 특정 인터페이스에서 CHAP 챌린지 또는 CHAP 응답 패킷을 받으면 피어 ID를 사용하여 CHAP 암호 키를 조회하여 사용합니다.
L2TP(Layer 2 Tunneling Protocol) 프로필에 대한 PPP 속성을 구성할 때 일반적으로 명령문 또는 pap-password
명령문을 구성 chap-secret
합니다.
CHAP를 구성하려면 명령문을 profile
포함하고 계층 수준에서 프로필 이름을 [edit access]
지정합니다.
[edit access] profile profile-name { client client-name chap-secret data; }
그런 다음 계층 수준에서 CHAP 프로필 이름을 [edit interfaces interface-name ppp-options chap]
참조합니다.
여러 프로필을 구성할 수 있습니다. 또한 각 프로필에 대해 여러 클라이언트를 구성할 수도 있습니다.
profile
피어 식별자와 CHAP 암호 키 간의 매핑입니다. CHAP 챌린지에 포함된 피어의 ID 또는 응답은 사용할 암호 키에 대한 프로필을 쿼리합니다.
client
피어 아이덴티티입니다.
chap-secret secret
바로 그 동료와 연관된비밀 키입니다.
예: L2TP PPP CHAP 구성
[edit] access { profile westcoast_bldg1 { client cpe-1 chap-secret "$ABC123"; # SECRET-DATA client cpe-2 chap-secret "$ABC123"; # SECRET-DATA } }
L2TP 프로파일에 대한 PAP 암호 구성
PAP(Password Authentication Protocol) 암호를 구성하려면 계층 레벨의 pap-password
[edit access profile profile-name client client-name]
명령문을 포함합니다.
[edit access profile profile-name client client-name] pap-password pap-password;
pap-password
PAP용 암호입니다.
예: L2TP 프로파일에 대한 PAP 구성
[edit access] profile sunnyvale_bldg_2 { client green { pap-password "$ABC123"; ppp { interface-id west; } group-profile sunnyvale_users; } client red { chap-secret "$ABC123"; group-profile sunnyvale_users; } authentication-order radius; } profile Sunnyvale_bldg_1_tunnel { client test { l2tp { shared-secret "$ABC123"; ppp-authentication pap; } } }
예: L2TP 구성
[edit] access { address-pool customer_a { address 10.1.1.1/32; } address-pool customer_b { address-range low 10.2.2.2 high 10.2.3.2; } group-profile westcoast_users { ppp { framed-pool customer_a; idle-timeout 15; primary-dns 10.192.65.1; secondary-dns 10.192.65.2; primary-wins 10.192.65.3; secondary-wins 10.192.65.4; interface-id west; } } group-profile eastcoast_users { ppp { framed-pool customer_b; idle-timeout 20; primary-dns 10.192.65.5; secondary-dns 10.192.65.6; primary-wins 10.192.65.7; secondary-wins 10.192.65.8; interface-id east; } } group-profile westcoast_tunnel { l2tp { maximum-sessions-per-tunnel 100; } } group-profile east_tunnel { l2tp { maximum-sessions-per-tunnel 125; } } profile westcoast_bldg_1 { client white { chap-secret "$ABC123"; # SECRET-DATA ppp { idle-timeout 22; primary-dns 10.192.65.10; framed-ip-address 10.12.12.12/32; } group-profile westcoast_users; } client blue { chap-secret "$ABC123"; # SECRET-DATA group-profile sunnyvale_users; } authentication-order password; } profile west-coast_bldg_2 { client red { pap-password "$ABC123"; # SECRET-DATA ppp { idle-timeout 22; primary-dns 10.192.65.11; framed-ip-address 10.12.12.12/32; } group-profile westcoast_users; } } profile westcoast_bldg_1_tunnel { client test { l2tp { shared-secret "$ABC123"; # SECRET-DATA maximum-sessions-per-tunnel 75; ppp-authentication chap;# The default for PPP authentication is CHAP. } group-profile westcoast_tunnel; } client production { l2tp { shared-secret "$ABC123 ABC123"; # SECRET-DATA ppp-authentication chap; } group-profile westcoast_tunnel; } } profile westcoast_bldg_2_tunnel { client black { l2tp { shared-secret "$ABC123 ABC123"; # SECRET-DATA ppp-authentication pap; } group-profile westcoast_tunnel; } } }
M7i 및 M10i 라우터용 L2TP 구성
M7i 및 M10i 라우터의 경우 PIC(Adaptive Services Physical Interface Card) 또는 MultiServices PIC에서 레이어 2 터널링 프로토콜(L2TP) 터널링 보안 서비스를 구성할 수 있습니다.
L2TP를 구성하려면 계층 수준에서 다음 진술을 [edit access]
포함하십시오.
[edit access] address-pool pool-name { address address-or-prefix; address-range low <lower-limit> high <upper-limit>; } group-profile profile-name { l2tp { interface-id interface-id; lcp-renegotiation; local-chap; maximum-sessions-per-tunnel number; ppp { cell-overhead; encapsulation-overhead bytes; framed-pool pool-id; idle-timeout seconds; interface-id interface-id; keepalive seconds; primary-dns primary-dns; primary-wins primary-wins; secondary-dns secondary-dns; secondary-wins secondary-wins; } } profile profile-name { authentication-order [ authentication-methods ]; accounting-order radius; client client-name { chap-secret chap-secret; group-profile profile-name; l2tp { interface-id interface-id; lcp-renegotiation; local-chap; maximum-sessions-per-tunnel number; ppp-authentication (chap | pap); shared-secret shared-secret; } pap-password pap-password; ppp { cell-overhead; encapsulation-overhead bytes; framed-ip-address ip-address; framed-pool framed-pool; idle-timeout seconds; interface-id interface-id; keepalive seconds; primary-dns primary-dns; primary-wins primary-wins; secondary-dns secondary-dns; secondary-wins secondary-wins; } user-group-profile profile-name; } } radius-disconnect-port port-number { radius-disconnect { client-address { secret password; } } } radius-server server-address { accounting-port port-number; port port-number; retry attempts; routing-instance routing-instance-name; secret password; source-address source-address; timeout seconds; } }