Conforme observado em outras respostas, known_hosts não tem suporte para intervalos de endereços IP. No entanto, ele suporta caracteres curinga. É claro que os curingas não são exatamente a mesma coisa; portanto, você precisa ter muito cuidado com a maneira como os usa nos endereços IP, mas no caso particular do Github isso pode ser feito com segurança.
A situação parece ter ficado mais simples desde que a pergunta foi feita. De acordo com a documentação oficial do Github, existe apenas um intervalo de endereços IP em uso (pelo menos no que diz respeito ao IPv4). Este é o intervalo 192.30.252.0/22. Isso possibilita 1020 endereços IP possíveis que abrangem convenientemente todo o intervalo possível para o último octeto em apenas quatro blocos C diferentes.
A partir man 8 sshd
disso, é com isso que devemos trabalhar em known_hosts:
Nomes de host é uma lista de padrões separados por vírgula ( *' and
? 'Atuam como curingas); cada padrão, por sua vez, corresponde ao nome do host canônico (ao autenticar um cliente) ou ao nome fornecido pelo usuário (ao autenticar um servidor). Um padrão também pode ser precedido por !' to indicate negation: if the host name matches a negated pattern, it is not accepted (by that line) even if it matched another pattern on the line. A hostname or address may optionally be enclosed within
['e ]' brackets then followed by
:' e um número de porta não padrão.
Usando essas informações, podemos construir uma entrada usando o curinga * para o último octeto que corresponda a todos os pontos de extremidade possíveis do Github (e SOMENTE esses pontos de extremidade) da seguinte maneira:
github.com,192.30.252.*,192.30.253.*,192.30.254.*,192.30.255.* ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
Se o intervalo de IP que você precisava construir não preencheu um bloco C completo e, portanto, todos os valores possíveis para um octeto, seria impossível usar caracteres curinga para uma correspondência tão precisa.