если решать "в лоб", можно как-нибудь так:
ip="127.0.0.1"; if [ "$(echo $ip | grep -v "[^0-9.]" | awk -F "." '$1<=255 && $2 <=255 && $3<=255 && $4<=255')" ]; then echo "ip="$ip; fi
недоглядел ошибку: 192.168.0.155.0.1 тоже пройдёт проверку
тогда так, для верности:ip="192.168.0.155"; if [ "$(echo $ip | grep -P '^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$' | awk -F "." '$1<=255 && $2 <=255 && $3<=255 && $4<=255')" ]; then echo "ip="$ip; fi