Como observado por don_crissti nos comentários. O problema no seu caso é que o padrão que tenta corresponder a 1.2.3.4
não corresponde às condições da palavra atendidas por -w
Use o modo PCRE no seu GNU grep
se for suportado. Usando uma visão positiva
grep -P '^1\.2\.3\.4(?=,)' file
ou como recomendado por Sundeep sem usar o PCRE, apenas
grep '^1\.2\.3\.4,' file
Também para correspondência mais exata de string, awk
é mais fácil de fazer
awk -F, -v var="1.2.3.4" '$1==var' file