Добавлю свои пять копеек:
Мало собрать и отправить пакет. Пакет должен кто-нибудь получить на принимающей стороне. Если принимающая сторона неготова принять ваш пакет, то он будет просто отброшен.
Чтобы принять пакет на принимающей стороне должен работать "сервер" и слушать "порт". Например в вебе браузер это клиент (сторона отправляющая запросы), когда вы вводите в адресную строку браузера имя сайта, то на этот сайт отправляется запрос. Сайт в простейшем случае - это компьютер, расположенный где-то в интернете. На нем запущен веб-сервер, который принимает запросы от клиентов. Если веб-сервер остановить, то сайт перестанет отвечать на запросы даже если сам компьютер будет работать.
Команда ping не требует для своей работы сервера, т.к. функционал сервера встроен непосредственно в стек протоколов tcp/ip и система сама отвечает (если трафик pingа не блокируется фаерволом).
Не понятно, почему вы зациклились на отправке пакетов роутеру? Когда отправляете пакет, то указываете адрес назначения пакета, а протокол сам решает как конкретно будет отправлен ваш пакет. Даже если это адрес yandex.ru и вы не знаете где он фактически находится, то TCP/IP + DNS разберутся с этим сами.
Обычно роутеры поддерживают управление через web, ssh, telnet (что-то из списка может быть выключено или не поддерживаться на данной модели). Используя клиенты для этих протоколов вы можете отправлять команды роутеру. Например ssh - это удаленная командная строка, выполняться команды будут на роутере, а вы будете видеть результат выполнения. Для web клиентом может быть не только браузер, но и curl или wget или ваша собственная программа.