almost ready! need dynamic IP