vpnc: “Error: either “to” is duplicate, or “ipid” is a garbage.”

Tive este problema ontem em uma máquina que precisa do vpnc para conectar em vpns Cisco
O vpnc é um serviço para conexão em vpns Cisco, sem que você tenha a necessidade de instalar o client da Cisco que em geral é um tédio de ativar já que você tem que compilar o mesmo. 

Bom, ontem ao tentar subir o vpnc ele apresentou o seguinte erro : 

Error: either “to” is duplicate, or “ipid” is a garbage.
VPNC started in background (pid: 30429)…

Ele apresentava este erro ao subir, mas ao mesmo tempo subia. Este erro é um pouco diferente do que eu li na internet, mas em suma, ele simplesmente diz que o vpnc entra em time out e dropa a conexão. 

Aí fui pegar a versão do vpnc : 

# vpnc –version 
vpnc version 0.5.3r512
Copyright (C) 2002-2006 Geoffrey Keating, Maurice Massar, others
vpnc comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of vpnc under the terms of the GNU General
Public License. For more information about these matters, see the files
named COPYING.
Built with certificate support.

Supported DH-Groups: nopfs dh1 dh2 dh5
Supported Hash-Methods: md5 sha1
Supported Encryptions: null des 3des aes128 aes192 aes256
Supported Auth-Methods: psk psk+xauth hybrid(rsa)

Mas ao que parece a versão que eu tinha aqui é mais nova que o artigo que eu li. 

Precisei fuçar um pouco mais cheguei na solução. Mesmo nesta versão o script vpnc-connect está com problemas e é necessário fazer a substituição do mesmo ( código neste link aqui ) no diretório /etc/vpnc . 

Os passos são : 

  • Copie o código aqui
  • Renomeie o arquivo /etc/vpnc/vpnc-connect para /etc/vpnc/vpnc-connect.old
  • Cole o conteúdo em um arquivo chamado /etc/vpc/vpc-connect
  • Dê permissão de execução no arquivo : chmod +x /etc/vpnc/vpnc-connect
E pronto, tente subir novamente e o erro vai sumir.