Até onde eu sei, a diretiva ServerName não permite um endereço IPv6.
Ele não aceita os colchetes nem o caractere de dois pontos de um endereço IPv6.
Esse formato é válido apenas para as diretivas Listen, NameVirtualHost e VirtualHost.
Dependendo da sua configuração (por exemplo: se você servidor vários domínios na mesma instalação do Apache) você pode tentar o seguinte.
Crie um vhost como faria normalmente e, em vez de definir um ServerName com um endereço IPv6, defina-o com um nome de dns apropriado (que não precisa realmente existir). Agora o truque é colocar este vhost em cima de todos os outros vhosts para esse IP: Port.
Dessa forma, quando um usuário faz uma solicitação por um domínio (ou IP no seu caso) que não é tratado pelo Apache, ele tentará atender à solicitação usando o primeiro VirtualHost encontrado para esse IP: Port.