ip bazlı bir kontrole gerek yok gibi, genelde cookie ile kontrol edilir.
kısaca yazarsak oy verdirdiğin yerde oy verdikten sonra,

HttpCookie sordumSariCicege = new HttpCookie("sordumSariCicege","annenBabanVarMidir" );
Response.Cookies.Add(sordumSariCicege);

sonrada oy verdirdiğin yerin en başına şu if kontrolünü koyarak,
if (Request.Cookies["sordumSariCicege"] == null)
{
//daha önce oy vermemiş.
}
else
{
//daha önce oy vermiş.
}

eğer ip bazlı kontrol istersen oy kullanan ipleri bir tabloya kaydet,
oy verdirdiğin yerde ise gene bir if kontrolü ile var mı yok mu diye kontrol et,
kullanıcının ipsini almak için ise
string ip = Request.UserHostAddress;
demen yeterli
iyi çalışmalar