El proyecto freegeoip tiene su propia función en R para poder crear un data.frame con la geolocalización de las IPs. La función la podéis encontrar en este enlace y tiene un funcionamiento muy sencillo:
library(rjson)
localizacion1 <- freegeoip('23.89.204.150')
localizacion2 <- freegeoip(c('106.78.232.100', '174.6.153.88'))
Resulta que no recordaba su existencia y ya tenía algo parecido en XML… pero siempre hay alguien que lo ha hecho antes con R. Saludos.