Interessant finde ich die Vorgehensweise bei _nicht_ korrektem Benutzernamen. IP zeitweise für den Login sperren ist nicht ok, weil ich damit anderen (echten) Usern mit derselben IP in die Quere komme.
Ein Problem ist da eher, dass du damit einem Angreifer eine wertvolle Information lieferst, ob ein Benutzer tatsächlich existiert.