Abaixo segue uma expressão regular retirada do site do Aurélio
cat ip |
egrep '^(([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).)
{3}([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$'
A expressão é um pouco grande, porém simples. Veja que as regras se repetem...