Иван Антонов родился 7 июля 1920 года в деревне Горбуново, Тверская область. Воспитывался в семье рабочего. Перед армией поработал счетоводом и заведующим клубом в родной деревне. В 1940 году Иван поступил на службу в Военно-Морской Флот. Учился в Объединенной школе младших авиационных специалистов. С самого начала войны активно участвовал в обороне главной военно-морской базы Краснознаменного Балтийского флота, города-порта Таллин.
После героического перехода кораблей флота из Таллина в Кронштадт Антонов воевал в качестве снайпера с гитлеровскими захватчиками на суше в районе Невской Дубровки, где стояла тяжелая морская батарея. Уничтожил из верной снайперской винтовки № 412, созданной тульскими оружейниками, 359 солдат и офицеров противника, среди них более 20 снайперов.
Стрелок 160-й отдельной стрелковой роты краснофлотец является одним из зачинателей снайперского движения на Балтике. Своему умению и мастерству меткой стрельбы Иван обучил более 80 человек. Отличный стрелок-снайпер трижды получал ранения, но каждый раз возвращался в боевой строй.
Указом Президиума Верховного Совета СССР от 22 февраля 1943 года за образцовое выполнение боевых заданий командования на фронте борьбы с немецко-фашистским захватчиками и проявленные при этом мужество и героизм Антонову Ивану Петровичу присвоено звание Героя Советского Союза с вручением ордена Ленина и медали «Золотая Звезда».
После войны продолжал службу в Военно-морском флоте. В 1953 года в звании мичмана Антонов ушел в запас. В этом же году окончил Ленинградский институт советской торговли и до ухода на пенсию работал директором продовольственной базы «Ленгастроном».
Награжден Иван Петрович двумя орденами Ленина, Орденом Отечественной войны I степени, а также медалями, в том числе «За победу над Германией в Великой Отечественной войне 1941-1945» и другими. Умер 22 марта 1989 года в городе Ленинград. Именем Героя назван минный тральщик, спущенный на воду 26 апреля 2018 года.