Openswan (버전 2.6.37)을 사용하여 로컬 네트워크에서 원격 사이트로 IPsec VPN을 연결하려고합니다. 원격 사이트의 단일 서브넷에 연결하려고하면 모든 것이 잘 작동합니다. 그러나 원격 사이트에는 액세스하려는 추가 서브넷이 있습니다.
이것은 내 구성입니다.
conn myConn
type=tunnel
left=192.168.139.14
leftsubnet=192.168.139.0/24
leftxauthclient=yes
right=X.X.X.X
rightsubnet=172.16.1.0/24
keyexchange=ike
auth=esp
authby=secret
phase2alg=3des-sha1
pfs=yes
언제 교체 rightsubnet
와 rightsubnets
과 같이 :
rightsubnets={172.16.1.0/24 192.168.3.0/24}
… 연결이 성공적으로 생성되었지만 목록의 마지막 서브넷 만 사용할 수 있습니다. 172.16.1.0
서브넷에서 아무것도 핑하려는 시도가 실패합니다. 서브넷 순서를 바꾸면 핑할 172.16.1.X
수는 있지만 다른 서브넷에서는 아무것도 핑할 수 없습니다. 마치 Openswan이 목록의 마지막 서브넷 만 사용하여 연결을 만드는 것처럼 보입니다.
내가 여기서 잘못하고 있습니까?
내가 언급에 소홀히 추가 정보의 조금 (I 아니에요 있지만 확인은 관련이) : 내 Openswan 클라이언트가 NAT 사용 라우터 뒤에 내가 가지고 nat_traversal=yes
내에서 ipsec.conf
파일.
답변
여러 서브넷 의 일반적인 구분 기호는 쉼표 이지만 적어도 openswan-2.6.32는 공백과도 작동합니다.
/var/log/secure
왜 작동하지 않는지에 대한 힌트를 얻을 수있는 흥미로운 정보가 기록되어야합니다 . 또한 출력을 게시 ip x s sh
하고 ip x p sh
.
답변
conn
터널의 양쪽 끝점에서 각 서브넷에 대한 섹션 구성을 만듭니다 . 이들 중 하나 (첫 번째 시작) 만 SA 협상을 시작하고 두 번째 (또는 그 이상)는 추가 서브넷의 새 SPD 만 만듭니다.
답변
당신이 사용하는 경우 뿐만 아니라 rightsubnets
사용해야 합니다. 해당 측면에 서브넷이 하나만 있어도. ipsec.conf 매뉴얼 페이지는 이것을 잘 설명하지 못하지만 거기에 있습니다.leftsubnets
leftsubnet
몇 달 동안 simmilar 문제가 있었고 방금 대답을 찾았습니다 :
/server/571352/openswan-multiple-subnets-routing-issue
답변
OpenSwan에 서브넷 목록이 제대로 작동하려면 끝에 쉼표가 추가로 필요한 버그가있는 것 같습니다. 시험:
rightsubnets={172.16.1.0/24,192.168.3.0/24,}
끝에 쉼표를 추가하십시오.
답변
이렇습니다
rightsubnets={172.16.1.0/24,192.168.3.0/24}
,
공백이 아닌 쉼표 ( )를 사용하여 항목을 구분하십시오.