Сделал протокольный драйвер, работает нормально в схеме сетевой адаптер - модем adsl. Драйвер способен посылать сырые пакеты в сеть через модем. Модем настроен в режиме роутера, т.е. модем сам составляет пакеты PPPoE. Но если настроить модем в режиме моста, то уже драйвер адаптера должен составлять arp пакеты в которых вложен ppp. Таким образом мой протокольный драйвер должен вставлять пакеты ppp в arp протокол. Вопрос такой, как определить в каком режиме отправлять пакеты, простые arp->ip->tcp(если модем настроен в режиме роутера) или же arp->ppp->ip->tcp (если модем настроен в режиме моста)?
Прочитать из реестра значение, которое было туда предварительно записано пользователем, чтобы указать, в каком режиме работать драйверу. А причем там arp?
есть такой вариант: 1) Инициировать процесс соединения по ppp протоколу. Если соединение неуспешно, значит мы находимся за роутером, тогда все упрощается. 2) После того как не удался 1 вариант, переходим к плану Б. пингуем некий инет адрес простыми пакетами arp->ip->icmp, если все нормально, тогда мы за роутером. А это значит, что нужно создать тестовый драйвер, который будет создавать соединение с ppp сервером, посредством ppp протокола. На нем и можно будет потренироваться