Problem w tym, że nie masz jak sprawdzić, czy user chce podać w danej części jedną, dwie czy trzy cyfry, musi Ci to zasygnalizować ręcznie. Nigdy nie bawiłem się w takie coś z ip, ale taki mój jeden z pierwszych pomysłów na szybko to może zrobić cztery inputy i gdy user wpisze trzy cyfry to z automatu przechodzisz do kolejnego, a gdy dwie to musi ręcznie wpisać kropkę lub tabem się przesunąć.
Widziałbym to np. tak, że masz cztery inputy i między nimi już ustawione kropki (np. po prostu znaczniki <span> między inputami, oczywiście wystylowane tak jakgdyby był to jeden duży input z miejscami na numery i kropami, ale layut to już najmniejszy problem i zakładam, że nie to jest przedmiotem pytania) i przejście do kolejnego inputa byśmy wyzwalali na tab (standardowo) oraz dodatkowo na próbę wpisania kropki, co byłoby wg mnie dobre pod względem UX.
Potem oczywiście w JS sobie ściągniesz wartości z tych inputów i scalisz w jeden adres plus można ewentualnie poddać jakieś walidacji - w sumie walidacja byłaby fajna już na etapie tworzenia kolejnych członów.
Jak znajdę wieczorem chwilę to spróbuję coś skrobnąć na codepen o co mi chodzi, bo może trochę zawile napisałem :)