IPv6 in AnyConnect for iOS
sskaje
sskaje at gmail.com
Sun Dec 28 07:46:15 PST 2014
Weird, I made these changes, headers are sent correctly like
ocserv[24892]: worker[sskaje]: 61.149.12.68:58680 sending IPv6
2400:8900:e000:xxxx:xxxx:2f:f9e5:c701/64
ocserv[24892]: worker[sskaje]: 61.149.12.68:58680 =============
X-CSTP-Address: 2400:8900:e000:xxxx:xxxx:2f:f9e5:c701/64
but this time, in AnyConnect debug log,
v6 2400:8900:e000:xxxx:xxxx:2f:f9e5:c701/64/null (fake ? no)
why always null...
and previous lines,
client ipv6 address: ip above
client ipv6 mask: unknown
maybe there is another format ?
like another x-cstp-address + x-cstp-netmask ?
sskaje at gmail.com
https://sskaje.me/
On Sun, Dec 28, 2014 at 11:39 PM, sskaje <sskaje at gmail.com> wrote:
> in ip-lease.c
>
> static
> int get_ipv6_lease(main_server_st* s, struct proc_st* proc)
> {
> ...
> if (proc->config.ipv6_network && proc->config.ipv6_prefix) {
> c_network = proc->config.ipv6_network;
> c_netmask = ipv6_prefix_to_mask(proc, proc->config.ipv6_prefix);
> } else {
> c_network = s->config->network.ipv6;
> // c_netmask = ipv6_prefix_to_mask(proc, proc->config.ipv6_prefix);
> c_netmask = ipv6_prefix_to_mask(proc, s->config->network.ipv6_prefix);
> }
>
>
> int get_ip_leases(main_server_st *s, struct proc_st *proc)
> {
> ...
> // if (proc->ipv6 && proc->ipv4->db) {
> if (proc->ipv6 && proc->ipv6->db) {
>
>
>
> sskaje at gmail.com
> https://sskaje.me/
>
>
> On Sun, Dec 28, 2014 at 10:11 PM, sskaje <sskaje at gmail.com> wrote:
>> I'm trying to find out what's changed between 0.8.9 and 0.9.0, this
>> time ws->config->ipv6_network is null, and ws->vinfo.ipv6 also null.
>>
>>
>>
>> sskaje at gmail.com
>> https://sskaje.me/
>>
>>
>> On Sun, Dec 28, 2014 at 3:52 PM, Nikos Mavrogiannopoulos
>> <nmav at gnutls.org> wrote:
>>> On Sun, 2014-12-28 at 12:00 +0800, sskaje wrote:
>>>> I tried:
>>>>
>>>> if (strncasecmp(req->user_agent, "Open Any", 8) == 0) {
>>>> if (strncmp(req->user_agent, "Open AnyConnect VPN Agent
>>>> v3", 28) == 0)
>>>> req->user_agent_type = AGENT_OPENCONNECT_V3;
>>>> else
>>>> req->user_agent_type = AGENT_OPENCONNECT;
>>>> } else if (strncasecmp(req->user_agent, "Cisco Any", 8) == 0) {
>>>> req->user_agent_type = AGENT_OPENCONNECT;
>>>> }
>>>>
>>>>
>>>> IPv6 address is recognized by AnyConnect for iOS, but with a 'null'
>>>> cidr. I tried the changes I made in worker-auth.c, same.
>>>
>>> Based on David's comment, I've modified worker-vpn.c in master to send
>>> IPv6 addresses together with prefix in both anyconnect and openconnect.
>>> Could you try it?
>>>
>>> regards,
>>> Nikos
>>>
>>>
More information about the openconnect-devel
mailing list