Você entendeu mal as expressões regulares: [0-255] não significa "um número decimal entre 0 e 255 ", mas significa "um dos 0 , 1 , 2 ou 5 ".
Esta é a expressão regular correta:
\b(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\b
Se você tentar, deverá obter a seguinte saída:
$ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\b' asd.txt 1335.0.1.234 241.92.88.103
(Todos os números, exceto 1335, foram correspondidos).
Dica de bônus: Se você deseja apenas os números correspondentes (sem os pontos e os números sem correspondência), use -o :
$ grep -Eo '\b(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\b' asd.txt
0
1
234
241
92
88
103
Outra dica: Se você quiser corresponder endereços IPv4 válidos (um por linha), use o seguinte comando:
grep -E '^((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])$' asd.txt