Tunnelling 인터페이스 프로토콜
이 페이지는/etc/config/network
에서 사용 가능한 모든 터널링 프로토콜과 그 옵션을 설명합니다. 일부 예제 구성은 페이지 끝 부분에 제공됩니다.
대부분의 프로토콜 지원을 위해서는 opkg 패키지를 설치해야합니다.
프로토콜 "pptp" (Point-to-Point Tunneling 프로토콜)
pptp
패키지를 사용하려면 PPtP패키지가 설치되어 있어야 합니다. “parent”장치를 구성하려면 다른 섹션이 있어야하며 방화벽의 “wan”영역 (이 세션의 “논리 인터페이스 이름”인 <vpn>)에 “<vpn>“을 추가해야 할 수도 있습니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
server | ip address | yes | (none) | “parent”장치를 구성하려면 다른 섹션이 있어야하며 방화벽의 “wan”영역 (이 세션의 “논리 인터페이스 이름”인 <vpn>)에 ”<vpn>“을 추가해야 할 수도 있습니다. |
username | string | no(?) | (none) | PAP / CHAP 인증을 위한 사용자 이름 |
password | string | no(?) | (none) | PAP / CHAP 인증을 위한 암호 |
buffering | boolean | no | 1 | 0 disables it (--nobuffer ) |
keepalive | integer | no | ? | 다시 연결 시도 횟수 |
defaultroute | boolean | no | 1 | 터널을 통해 기본 경로를 만들지 여부 |
peerdns | boolean | no | 1 | PPTP 제공 DNS 서버 사용 |
delegate | boolean | no | ? | 내장 IPv6 관리 사용 |
iface | string | no(?) | pptp-<vpn> | 물리적 인터페이스의 이름. 사용하는 것과 관계없이 pptp-<vpn> 기본값 |
프로토콜 "aiccu" (Automatic IPv6 Connectivity Client Utility)
이 프로토콜을 사용하려면 패키지 aiccu
가 설치되어 있어야합니다. 이 유틸리티는 헤드리스 모드로 작동하지 않습니다. 다른 옵션이있는 경우에는 사용하지 마십시오. AYIYA 터널 유형 만 테스트되었습니다. 정적 또는 하트 비트 터널의 경우 he.net 터널 브로커와 함께 기본 6in4 터널을 대신 사용하십시오.
이 프로토콜은 Barrier Breaker 및 최신 버전에서만 사용할 수 있습니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
username | string | yes | (none) | 서버 username |
password | string | yes | (none) | 서버 password |
protocol | string | no | (none) | 사용할 터널 설정 프로토콜 (tic , tsp , l2tp ) |
server | string | no | tic.sixxs.net | 사용할 터널 설정 서버 |
ip6addr | IPv6 address (CIDR) | no | (none) | 터널 종점에 위임 된 로컬 IPv6 주소 (필요 없음) |
ntpsynctimeout | integer | no | 90 | NTP 동기화를 몇 초 동안 기다리십시오 (available since aiccu 20070115-12) |
tunnelid | integer | no | (none) | TIC 서버 터널 ID |
ip6prefix | IPv6 prefix | no | (none) | donwtream 인터페이스에 대한 라우팅 된 IPv6 prefix |
defaultroute | boolean | no | 1 | 터널을 통해 IPv6 기본 경로를 만들지 여부 |
tunnelid | integer | no | (none) | TIC 서버 터널 ID |
requiretls | boolean | no | 0 | TIC 서버에 TLS 연결 필요 |
nat | boolean | no | 1 | NAT 종류의 네트워크가 감지되었음을 사용자에게 알립니다. |
heartbeat | boolean | no | 1 | Make heartbeats |
verbose | boolean | no | 0 | 시스템 로그에 자세한 로깅 |
Note: 이 프로토콜 유형에는 인터페이스 세션에ifname
옵션을 설정할 필요가 없습니다. 인터페이스 이름은 섹션 이름에서 파생됩니다 (예 :config interface sixbone
에서 aiccu-sixbone
이라는 이름이 됩니다.
프로토콜 "relay" (Relayd Pseudo Bridge)
이 프로토콜을 사용하려면 패키지 relayd
가 설치되어 있어야합니다
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
network | list of logical interface names | yes | (none) | 트래픽이 중계되는 네트워크를 지정합니다. |
gateway | IPv4 address | no | (network default) | DHCP 응답 내에서 클라이언트로 전송 된 게이트웨이 주소 무시 |
expiry | integer | no | 30 | 호스트 만료 시간 제한 (초) |
retry | integer | no | 5 | 호스트가 죽은 것으로 간주되기 전에 ARP ping 재시도 횟수 |
table | integer | no | 16800 | 자동 추가 된 경로의 테이블 ID |
forward_bcast | boolean | no | 1 | 브로드 캐스트 트래픽의 전달을 활성화하고, 0 은 비활성화 합니다. |
forward_dhcp | boolean | no | 1 | DHCP 요청 및 응답 전달을 사용 가능하게하고 ,0은 비활성화 합니다. |
Common options for GRE protocols
GRE를 사용하려면 패키지 gre
설치해야 합니다. 게다가 kmod-gre
및/또는 kmod-gre6
도 설치해야 합니다.
Barrier Breaker에 GRE 지원이 도입되었습니다. 다음과 같은 네 개의 프로토콜이 정의됩니다 ( “gre”, “gretap”, grev6 “및”grev6tap ”).
프로토콜 | GRE type | 인터페이스 이름 |
---|---|---|
gre | IPv4 GRE | gre4-<logical interface name> |
gretap | GRE-TAP IPv4 | gre4t-<logical interface name> |
grev6 | GRE IPv6 | gre6-<logical interface name> |
grev6tap | GRE-TAP IPv6 | gre6t-<logical interface name> |
네 가지 프로토콜 모두 다음과 같은 일반적인 옵션을 사용할 수 있습니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
mtu | integer | no | 1280 | MTU |
ttl | integer | no | 64 | 캡슐화 패킷의 TTL |
tunlink | logical interface name | no | (none) | 이 인터페이스에 터널을 바인드합니다 ( “ip tunnel”의 dev 옵션). |
zone | zone name | no | “wan” | 인터페이스가 추가 될 방화벽 zone |
tos | string | no | (none) | 서비스 유형 (IPv4), 트래픽 클래스 (IPv6) : “상속”(외부 헤더가 내부 헤더의 값을 상속 받음) 또는 16 진수 값 (Chaos Calmer 이상) ) |
ikey | integer | no | 0 | 들어오는 패킷의 키 |
okey | integer | no | 0 | 나가는 패킷의 키 |
icsum | boolean | no | false | 수신 체크섬 필요 |
ocsum | boolean | no | false | 나가는 체크섬을 계산 |
iseqno | boolean | no | false | 들어오는 패킷 직렬화가 필요 |
oseqno | boolean | no | false | 나가는 패킷 직렬화 수행 |
프로토콜 "gre" (GRE tunnel over IPv4)
위의 모든 공통 옵션 외에 다음 옵션이 지원됩니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
ipaddr | IPv4 address | no | WAN IP | 로컬 endpoint |
peeraddr | IPv4 address | yes | (none) | 원격 endpoint |
df | boolean | no | true | 패킷을 캡슐화 할 때 “Do not Fragment”플래그를 설정 |
프로토콜 "gretap" (Ethernet GRE tunnel over IPv4)
위의 모든 공통 옵션 외에 다음 옵션이 지원됩니다.
Name | Type | Required | Default | Description |
---|---|---|---|---|
ipaddr | IPv4 address | no | WAN IP | 로컬 endpoint |
peeraddr | IPv4 address | yes | (none) | 원격 endpoint |
df | boolean | no | true | 패킷을 캡슐화 할 때 “Do not Fragment”플래그를 설정 |
network | logical interface name | no | (none) | 터널이 추가 (브리징) 될 논리적 네트워크 |
프로토콜 "grev6" (GRE tunnel over IPv6)
위의 모든 공통 옵션 외에 다음 옵션이 지원됩니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
ip6addr | IPv6 address | no | WAN IP | 로컬 endpoint |
peer6addr | IPv6 address | yes | (none) | 원격 endpoint |
weakif | logical interface name | no | lan | ip6addr 매개 변수가 비어 있고 WAN IP를 사용할 수없는 경우 로컬 endpoint을 선택하는 논리 네트워크 |
프로토콜 "grev6tap" (Ethernet GRE tunnel over IPv6)
위의 모든 공통 옵션 외에 다음 옵션이 지원됩니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
ip6addr | IPv6 address | no | WAN IP | 로컬 endpoint |
peer6addr | IPv6 address | yes | (none) | 원격 endpoint |
weakif | logical interface name | no | lan | ip6addr 매개 변수가 비어 있고 WAN IP를 사용할 수없는 경우 로컬 endpoint을 선택하는 논리 네트워크 |
network | logical interface name | no | (none) | 터널이 추가 (브리징) 될 논리적 네트워크 |
Protocol "vti" (VTI tunnel over IPv4)
VTI 터널은 fwmark가 설정된 IPsec 정책입니다. 트래픽은 일치하는 VTI 인터페이스로 리디렉션됩니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
ipaddr | IPv4 address | no | WAN IP | 로컬 endpoint |
peeraddr | IPv4 address | yes | (none) | 원격endpoint |
mtu | integer | no | 1280 | MTU |
tunlink | logical interface name | no | (none) | 인터페이스에 터널을 바인드합니다 ( “ip tunnel”의 dev 옵션). |
zone | zone name | no | “wan” | 인터페이스가 추가 될 방화벽 zone |
ikey | integer | no | 0 | 들어오는 패킷의 키 / fwmark |
okey | integer | no | 0 | 송신 패킷의 키 / fwmark |
프로토콜 "vtiv6" (VTI tunnel over IPv6)
위의 모든 공통 옵션 외에 다음 옵션이 지원됩니다.
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
ipaddr | IPv4 address | no | WAN IP | 로컬 endpoint |
peeraddr | IPv4 address | yes | (none) | 원격endpoint |
mtu | integer | no | 1280 | MTU |
tunlink | logical interface name | no | (none) | 인터페이스에 터널을 바인드합니다 ( “ip tunnel”의 dev 옵션). |
zone | zone name | no | “wan” | 인터페이스가 추가 될 방화벽 zone |
ikey | integer | no | 0 | 들어오는 패킷의 키 / fwmark |
okey | integer | no | 0 | 송신 패킷의 키 / fwmark |
프로토콜 "wireguard" (Wireguard VPN)
wireguard를 사용하기 위해서 wireguard-tools
와 kmod-wireguard
패키지들이 설치 되어 있어야 합니다.
각 wireguard 인터페이스는 두 부분으로 구성됩니다.
- 인터페이스 자체와 관련된 구성 (개인 키, MTU, 바인드 할 UDP 포트 등)
- 각 피어 (공개 키, IP 주소 등)에 상대적인 설정
인터페이스 설정 (proto wireguard
):
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
private_key | string | yes | (none) | Wireguard private key, generated with wg genkey |
listen_port | int | no | wireguard-specific | 송신 및 수신 패킷에 사용되는 UDP 포트 |
mtu | integer | no | wireguard-specific | 인터페이스 MTU |
preshared_key | string | no | (none) | 옵션으로 공유 된 비밀 (post-quantum resistance)을 위해 대칭 키 암호화 (symmetric-key cryptography) 계층을 추가로 제공 |
네트워크 인터페이스의 이름은 구성 섹션의 이름입니다.
각 피어에 대한 피어 구성 :
이름 | Type | Required | 초기값 | 설명 |
---|---|---|---|---|
public_key | string | yes | (none) | 피어의 Public key |
allowed_ips | list of prefixes | yes | (none) | 이 피어가 터널 내부에서 사용하도록 허용 된 IP 주소 및 접두사. 와이어 가드의 내부 라우팅 테이블에도 사용됩니다. IPv4 및 IPv6 모두 작동 |
route_allowed_ips | boolean | no | false | 이 피어에 허용 된 각 IP에 대한 경로를 자동으로 만듭니다. |
endpoint_host | string | no | (none) | 피어의 IP 주소 또는 호스트 이름. 지정하지 않으면, Wireguard는 피어로부터의 연결을 기다립니다 |
endpoint_port | int | no | 51820 | 피어의 UDP 포트 |
persistent_keepalive | int | no | 0 | 연결 유지 메시지 간의 초 수, 0은 사용할 수 없음을 나타냅니다. |
피어 세션의 이름은 wireguard_XX
여야합니다. 여기서 XX
는 wireguard 인터페이스 섹션의 이름입니다.
예시들
여기를 참고하세요.