Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Cетевые протоколы и технологии

Cетевые протоколы и технологии TCP/IP стек

Ответ
 
Опции темы Опции просмотра
Старый 22.12.2016, 12:32   #26
Petr
Senior Member
 
Аватар для Petr
 
Регистрация: 25.02.2007
Возраст: 46
Сообщений: 1,734
Вес репутации: 3438/91
Petr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Отчитываюсь.

1) IP_DEFAULT_TTL (время жизни пакета) не должно быть 255. Сколько угодно, но не 255.
2) В MAC адресе устройства ни единого байта не должно быть нулевого(все отличны от нуля). Это уже приколы роутера (на мой взгляд). Но может кому будет полезно.
Petr вне форума   Ответить с цитированием
Старый 22.12.2016, 12:35   #27
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,299
Вес репутации: 4442/102
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию Re: Android VS LwIP

надеюсь скоро вольюсь в эти ряды. Сегодня должен получить J-Link.
ampersant вне форума   Ответить с цитированием
Старый 22.12.2016, 13:46   #28
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Petr Посмотреть сообщение
Отчитываюсь.

1) IP_DEFAULT_TTL (время жизни пакета) не должно быть 255. Сколько угодно, но не 255.
2) В MAC адресе устройства ни единого байта не должно быть нулевого(все отличны от нуля). Это уже приколы роутера (на мой взгляд). Но может кому будет полезно.
Петя, нехорошо сознательно вводить народ в заблуждение. Оба пункта - хрень полная. Не ожидал от тебя такого.
Вот у меня железо аналогичное STM32 и тот же стек LwIP, все твои опыты я еще до обеда повторил, причем MAC-адрес моего девайса содержит нулевые байты (у него вообще из восьми байт один только байт ненулевой) и время жизни в ответе от девайса по умолчанию ttl=255 (в запросах ttl=128), смотри скриншот, на нем ICMP-пакеты. Все работает как надо (TCP-клиент, UDP-сервер, ICMP)
Миниатюры
MAC с нулевыми байтами и ttl 128 255.PNG  
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 13:51   #29
igor_tgru
Senior Member
 
Аватар для igor_tgru
 
Регистрация: 25.02.2007
Возраст: 44
Сообщений: 664
Вес репутации: 1357/59
igor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud of
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Petr Посмотреть сообщение
2) В MAC адресе устройства ни единого байта не должно быть нулевого(все отличны от нуля). Это уже приколы роутера (на мой взгляд). Но может кому будет полезно.
это как ? валидные мак адреса вполне себе содержат 00
igor_tgru вне форума   Ответить с цитированием
Старый 22.12.2016, 14:01   #30
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 38
Сообщений: 3,249
Вес репутации: 3684/108
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Petr Посмотреть сообщение
Отчитываюсь.

1) IP_DEFAULT_TTL (время жизни пакета) не должно быть 255. Сколько угодно, но не 255.
2) В MAC адресе устройства ни единого байта не должно быть нулевого(все отличны от нуля). Это уже приколы роутера (на мой взгляд). Но может кому будет полезно.
файрвол роутера и андроида отключены?
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 22.12.2016, 14:06   #31
igor_tgru
Senior Member
 
Аватар для igor_tgru
 
Регистрация: 25.02.2007
Возраст: 44
Сообщений: 664
Вес репутации: 1357/59
igor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud of
По умолчанию Re: Android VS LwIP

2Petr
уточни плиз а когда коннекта нету то железка и ведроид с айосом в одной подсетке живут ? или же в разных и между ними роутер ?
igor_tgru вне форума   Ответить с цитированием
Старый 22.12.2016, 15:13   #32
smart_pic
Senior Member
 
Регистрация: 08.12.2008
Адрес: Ставрополь
Возраст: 53
Сообщений: 960
Вес репутации: 2006/62
smart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond reputesmart_pic has a reputation beyond repute
Отправить сообщение для smart_pic с помощью Skype™
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Petr Посмотреть сообщение
2) В MAC адресе устройства ни единого байта не должно быть нулевого(все отличны от нуля). Это уже приколы роутера (на мой взгляд). Но может кому будет полезно.
Про нулевой байт ничего не скажу, а вот первый байт МАС адреса на работу очень даже влияет, особенно на внешнюю сеть. Причем на разных роутерах ведет себя по разному
smart_pic вне форума   Ответить с цитированием
Старый 22.12.2016, 17:22   #33
maxxir
Member
 
Аватар для maxxir
 
Регистрация: 28.11.2010
Адрес: Тольятти
Возраст: 46
Сообщений: 49
Вес репутации: 491/30
maxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of light
По умолчанию Re: Android VS LwIP

Вот так у меня нулевой байт MAC адреса для ЛВС формируется:
Код:
    //Bullet proof MAC address from here:  https://en.wikipedia.org/wiki/MAC_address
    mac.addr[0] &= ~(1<<0); // First  bit first octet MAC-48 must be 0 for unicast mode (1 multicast)
    mac.addr[0] |=  (1<<1); // Second bit first octet MAC-48 must be 1 for locally administered  (0 globally unigue OUI enforced)
Если тут будет неправильная комбинация, пакеты могут откидываться устройствами/роутером.
maxxir вне форума   Ответить с цитированием
Старый 22.12.2016, 17:55   #34
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 38
Сообщений: 3,249
Вес репутации: 3684/108
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от maxxir Посмотреть сообщение
Вот так у меня нулевой байт MAC адреса для ЛВС формируется:
Код:
    //Bullet proof MAC address from here:  https://en.wikipedia.org/wiki/MAC_address
    mac.addr[0] &= ~(1<<0); // First  bit first octet MAC-48 must be 0 for unicast mode (1 multicast)
    mac.addr[0] |=  (1<<1); // Second bit first octet MAC-48 must be 1 for locally administered  (0 globally unigue OUI enforced)
Если тут будет неправильная комбинация, пакеты могут откидываться устройствами/роутером.
а у меня вот так:
Код:
static UINT8 bMacAddr[8]=
{
    0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
};
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 22.12.2016, 18:40   #35
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от maxxir Посмотреть сообщение
Вот так у меня нулевой байт MAC адреса для ЛВС формируется:
Код:
    //Bullet proof MAC address from here:  https://en.wikipedia.org/wiki/MAC_address
    mac.addr[0] &= ~(1<<0); // First  bit first octet MAC-48 must be 0 for unicast mode (1 multicast)
    mac.addr[0] |=  (1<<1); // Second bit first octet MAC-48 must be 1 for locally administered  (0 globally unigue OUI enforced)
Если тут будет неправильная комбинация, пакеты могут откидываться устройствами/роутером.
Это про "сферический конь в вакууме". Явите миру MAC-адрес или диапазон (в сетевом порядке байт), который будет отбрасываться устройством (кроме MAC 00:00:00:00:00:00:00:00).

У меня вчера было сомнение на тему "зачем Петя дал ссылки на свой сайт и назвал скриншоты устройством", а сегодня как прочитал, что в MAC-адресе не должно быть ни одного нулевого байта и TTL не должен быть равен 255, так у меня мысль - не мог он не знать структуру MAC-адресов и значение TTL, и не пойму зачем тогда написал такое? Неужели думал, что никто не поправит его?

PS: Есть список IEEE Public OUI list, их выдает IEEE, даже в трех байтах "идентификатора организации" встречаются нулевые байты, а в оставшихся трех байтах тем более могут быть нули, от 00:00:00 до FF:FF:FF.
Ну а TTL уменьшается на единицу при прохождении через каждый сетевой узел и может быть равно 255 = 0xFF.
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 22.12.2016 в 18:53.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 18:51   #36
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 38
Сообщений: 3,249
Вес репутации: 3684/108
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Это про "сферический конь в вакууме". Явите миру MAC-адрес или диапазон (в сетевом порядке байт), который будет отбрасываться устройством (кроме MAC 00:00:00:00:00:00:00:00).

У меня вчера было сомнение на тему "зачем Петя дал ссылки на свой сайт и назвал скриншоты устройством", а сегодня как прочитал, что в MAC-адресе не должно быть не одного нулевого байта и TTL не должен быть равен 255, так у меня мысль - не мог он не знать структуру MAC-адресов и значение TTL, и не пойму зачем тогда написал такое? Неужели думал, что никто не поправит его?
Тоже задался вопросом про ссылку на свой сайт :-).
А на счет блокировки определенных МАС и ТТЛ - так я не зря про файрвол спросил - это первый претендент на блокировку определенных адресов/полей пакета. Причем он может быть встроен в сам андроид.
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 22.12.2016, 19:08   #37
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от IceS Посмотреть сообщение
Тоже задался вопросом про ссылку на свой сайт :-).
А на счет блокировки определенных МАС и ТТЛ - так я не зря про файрвол спросил - это первый претендент на блокировку определенных адресов/полей пакета. Причем он может быть встроен в сам андроид.
Да ладно бы ссылку дал, оно понятно, хочется рассказать о чем-то новом, что осваиваю, да и нам же интересно (сообществу), я от себя пишу, но и другим, наверное, тоже интересно, по крайней мере идея и дизайн интересный.
Но описание проблемы свалил в кучу, тему назвал, если перевести на русский "Андроид против LwIP", ну да ладно, с одной стороны как смог (или как захотел), я даже заволновался "не случилось ли что с человеком умственного труда" (честно), мало ли чего.
Ну ладно, написал "все мое...", "использую LwIP...но я еще не реализовал ICMP" (а он там уже есть и вообще должен быть в любом TCP/IP стеке в соответствии с требованиями стандарта - диагностический протокол), потом написал "я его выпилил", ну да ладно - выкрутился.
Но когда написал последние два предложения и сопроводил наставлением "может кому будет полезно", то совсем удивил. Так и хочется спросить "ребята, вы что делаете?". Это преступление перед сообществом.

PS: В брандмауэре обычно резрешаются UDP или TCP порты для разных программ, это я про брандмауэр Windows, а вот роутер можно настроить на фильтрацию по IP-адресам, по MAC-адресам..., но вряд ли человек у которого и так мало времени будет еще и настраивать роутер, создавать правила...а потом их править, переписывать, удалять.
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 22.12.2016 в 19:27.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 19:31   #38
igor_tgru
Senior Member
 
Аватар для igor_tgru
 
Регистрация: 25.02.2007
Возраст: 44
Сообщений: 664
Вес репутации: 1357/59
igor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud of
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Pridnya Посмотреть сообщение
а он там уже есть и вообще должен быть в любом TCP/IP стеке в соответствии с требованиями стандарта - диагностический протокол
в стеках он действительно есть . но имхо его реализация совсем необязательна . иногда его спецом отключают на интерфейсах (особенно смотрящих наружу ) тогда подобные роутеры называют "черными дырами"
igor_tgru вне форума   Ответить с цитированием
Старый 22.12.2016, 19:43   #39
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от igor_tgru Посмотреть сообщение
в стеках он действительно есть . но имхо его реализация совсем необязательна . иногда его спецом отключают на интерфейсах (особенно смотрящих наружу ) тогда подобные роутеры называют "черными дырами"
А теперь читаем документ 1981-го года RFC792, первый абзац, последнее предложение.
Цитата:
Network Working Group J. Postel
Request for Comments: 792 ISI
September 1981

INTERNET CONTROL MESSAGE PROTOCOL

The Internet Protocol (IP) [1] is used for host-to-host datagram
service in a system of interconnected networks called the
Catenet [2]. The network connecting devices are called Gateways.
These gateways communicate between themselves for control purposes
via a Gateway to Gateway Protocol (GGP) [3,4]. Occasionally a
gateway or destination host will communicate with a source host, for
example, to report an error in datagram processing. For such
purposes this protocol, the Internet Control Message Protocol (ICMP),
is used. ICMP, uses the basic support of IP as if it were a higher
level protocol, however, ICMP is actually an integral part of IP, and
must be implemented by every IP module.
Этот протокол должен быть. Читайте стандарт. Я вообще в последние месяцы удивляюсь, как много лет их стандартам и как их у нас используют, как переводят. Этот протокол используется не только пингования (отправить пакет и просто принять),с его помощью можно узнать, что такой-то протокол не поддерживается, такой-то порт недоступен...
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 20:00   #40
igor_tgru
Senior Member
 
Аватар для igor_tgru
 
Регистрация: 25.02.2007
Возраст: 44
Сообщений: 664
Вес репутации: 1357/59
igor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud ofigor_tgru has much to be proud of
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Pridnya Посмотреть сообщение
. Этот протокол используется не только пингования (отправить пакет и просто принять),с его помощью можно узнать, что такой-то протокол не поддерживается, такой-то порт недоступен...
то что пинг это самая маленькая часть этого протокола это по моему даже ежикам известно , только есть небольшая разница между стандартом и реализацией , особенно в конкретной железке , практически все протоколы на интерфейсах сетевого оборудования отключабельны и это не делает их несовместимыми со стандартом
igor_tgru вне форума   Ответить с цитированием
Старый 22.12.2016, 20:03   #41
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,652
Вес репутации: 5137/157
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Читайте стандарт.
дай ссылку-то на "стандарт".
как расшифровывается RFC я знаю.
Greg вне форума   Ответить с цитированием
Старый 22.12.2016, 20:41   #42
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от igor_tgru Посмотреть сообщение
то что пинг это самая маленькая часть этого протокола это по моему даже ежикам известно , только есть небольшая разница между стандартом и реализацией , особенно в конкретной железке , практически все протоколы на интерфейсах сетевого оборудования отключабельны и это не делает их несовместимыми со стандартом
Диагностический протокол должен быть, как минимум на этапе отладки. А так есть люди, которые отключаю ICMP и потом отлаживают связь с узлом, пытаясь установить TCP-соединение, затем, чтобы никто не понял, что дело забуксовало надолго, резко придумывают причине неисправности, для большей убедительности, снабдив "может кому понадобится" ( как бы подарок сделал) и убегать с темы. Но эти уловки нам знакомы.
Цитата:
Сообщение от Greg Посмотреть сообщение
дай ссылку-то на "стандарт".
как расшифровывается RFC я знаю.
Это я назвал "стандартом" RFC792 INTERNET CONTROL MESSAGE PROTOCOL, возможно, называть стандартом некорректно. А что еще использовать можно?

Я в последнее время осваивал протоколы NTP, SNTP и ничего кроме RFC не использовал:
rfc1305c NTP v3, 1992
rfc1769 SNTP v3, 1995
rfc2030 SNTP v4, 1996
SNTP v4 for IPv4, IPv6 and OSI, 2006
Эти документы я и называю стандартами. Если я не прав, поправьте.

PS: И просьба ко всем, кто не знаком с TCP/IP и LwIP не участвовать в обсуждении (в т.ч. по "политическим" мотивам...).
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 22.12.2016 в 20:59.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 21:14   #43
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Greg Посмотреть сообщение
дай ссылку-то на "стандарт".
как расшифровывается RFC я знаю.
А ведь я давал ссылку на RFC792 INTERNET CONTROL MESSAGE PROTOCOL.
В английской версии Википедии про RFC можно почитать. Часть из них является стандартами, а часть нет.
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 21:42   #44
maxxir
Member
 
Аватар для maxxir
 
Регистрация: 28.11.2010
Адрес: Тольятти
Возраст: 46
Сообщений: 49
Вес репутации: 491/30
maxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of light
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Это про "сферический конь в вакууме". Явите миру MAC-адрес или диапазон (в сетевом порядке байт), который будет отбрасываться устройством (кроме MAC 00:00:00:00:00:00:00:00).

У меня вчера было сомнение на тему "зачем Петя дал ссылки на свой сайт и назвал скриншоты устройством", а сегодня как прочитал, что в MAC-адресе не должно быть ни одного нулевого байта и TTL не должен быть равен 255, так у меня мысль - не мог он не знать структуру MAC-адресов и значение TTL, и не пойму зачем тогда написал такое? Неужели думал, что никто не поправит его?

PS: Есть список IEEE Public OUI list, их выдает IEEE, даже в трех байтах "идентификатора организации" встречаются нулевые байты, а в оставшихся трех байтах тем более могут быть нули, от 00:00:00 до FF:FF:FF.
Ну а TTL уменьшается на единицу при прохождении через каждый сетевой узел и может быть равно 255 = 0xFF.
Являю первый октет MAC-48 ЛВС для unicast'a (Binary data):
mac.addr[0] = 0bxxxx_xx10; - OK
mac.addr[0] = 0bxxxx_xx0x; - Error
maxxir вне форума   Ответить с цитированием
Старый 22.12.2016, 21:59   #45
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от maxxir Посмотреть сообщение
Являю первый октет MAC-48 ЛВС для unicast'a (Binary data):
mac.addr[0] = 0bxxxx_xx10; - OK
mac.addr[0] = 0bxxxx_xx0x; - Error
Для начала нужно опровергнуть сообщение Пети, о том, что в MAC-адресе не должно быть нулевых байтов. А то у кого-нибудь сложится впечатление, что я возражаю по причине того, что нет MAC-адресов, которые может отклонить сетевой узел.

А теперь давай приведем его к нормальному виду (в сетевом порядке байт), чтобы понятнее было нам и всем.
Напрмер у меня в девайсе STM32+LwIP сейчас MAC-адрес 02:00:00:00:00:00 это видно на скриншоте в этом посте, что и соответствует твоему "ОК".
Я пробовал задать MAC-адрес 00:00:00:00:00:00 (все нули) и убедился, что с таким адресом не работает. Это единственный адрес с которым не заработало (потому я и оставил 02:00:00:00:00:00).
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 22:07   #46
maxxir
Member
 
Аватар для maxxir
 
Регистрация: 28.11.2010
Адрес: Тольятти
Возраст: 46
Сообщений: 49
Вес репутации: 491/30
maxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of light
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Для начала нужно опровергнуть сообщение Пети, о том, что в MAC-адресе не должно быть нулевых байтов. А то у кого-нибудь сложится впечатление, что я возражаю по причине того, что нет MAC-адресов, которые может отклонить сетевой узел.

А теперь давай приведем его к нормальному виду (в сетевом порядке байт), чтобы понятнее было нам и всем.
Напрмер у меня в девайсе STM32+LwIP сейчас MAC-адрес 02:00:00:00:00:00 это видно на скриншоте в этом посте, что и соответствует твоему "ОК".
Я пробовал задать MAC-адрес 00:00:00:00:00:00 (все нули) и убедился, что с таким адресом не работает. Это единственный адрес с которым не заработало (потому я и оставил 02:00:00:00:00:00).
Ну если развернуть код то оно вот так выглядит:
Код:
   mac.addr[0] = config.mac[0];
   mac.addr[1] = config.mac[1];
   mac.addr[2] = config.mac[2];
   mac.addr[3] = config.mac[3];
   mac.addr[4] = config.mac[4];
   mac.addr[5] = config.mac[5];
    
    //Bullet proof MAC address from here:  https://en.wikipedia.org/wiki/MAC_address
    mac.addr[0] &= ~(1<<0); // First  bit first octet MAC-48 must be 0 for unicast mode (1 multicast)
    mac.addr[0] |=  (1<<1); // Second bit first octet MAC-48 must be 1 for locally administered  (0 globally unigue OUI enforced)
config.mac - Генерится из оn-line генератора MAC-48 и хранится в EEPROM. И там
вот такого 2-0-0-0-0-0 не бывает.
maxxir вне форума   Ответить с цитированием
Старый 22.12.2016, 22:14   #47
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,299
Вес репутации: 4442/102
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от maxxir Посмотреть сообщение
Ну если развернуть код то оно вот так выглядит:
Код:
   mac.addr[0] = config.mac[0];
   mac.addr[1] = config.mac[1];
   mac.addr[2] = config.mac[2];
   mac.addr[3] = config.mac[3];
   mac.addr[4] = config.mac[4];
   mac.addr[5] = config.mac[5];
    
    //Bullet proof MAC address from here:  https://en.wikipedia.org/wiki/MAC_address
    mac.addr[0] &= ~(1<<0); // First  bit first octet MAC-48 must be 0 for unicast mode (1 multicast)
    mac.addr[0] |=  (1<<1); // Second bit first octet MAC-48 must be 1 for locally administered  (0 globally unigue OUI enforced)
config.mac - Генерится из оn-line генератора MAC-48 и хранится в EEPROM. И там
вот такого 2-0-0-0-0-0 не бывает.
А как же из микрочиповской либы:
#define MY_DEFAULT_MAC_BYTE1 (0x00)
#define MY_DEFAULT_MAC_BYTE2 (0x04)
#define MY_DEFAULT_MAC_BYTE3 (0xA3)

или вы о другом?
ampersant вне форума   Ответить с цитированием
Старый 22.12.2016, 22:17   #48
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от maxxir Посмотреть сообщение
сonfig.mac - Генерится из оn-line генератора MAC-48. И там
вот такого 2-0-0-0-0-0 не бывает.
Если ссылаешься на какой-то онлайн-генератор, то хотя бы ссылку давай.

Вообще MAC-адреса выдаются специальной уполномоченной организацией и в структуре MAC-адреса 3 байта - идентификатор организации, которой выдали MAC-адрес, а еще 3 байта - номер девайса в пределах организации. Таким образом по настоящему MAC-адресу определяется производитель сетевого оборудования и даже дату выпуска можно узнать.

02:00:00:00:00:00 это локальный MAC-адрес, никто не запрещает мне использовать такой MAC-в локальной сети (на скриншоте ICMP-запрос, в нем виден мой локальный MAC), которая подключена к Интернету чрез роутер. Роутер отправляет в Интернет свой MAC.

Я пробовал работать с адресами
02:00:00:00:00:00
02:00:00:00:00:01
и т.д. и все устройства работают в локальной сети.
Мой локальный MAC-адрес за пределы локальной сети не попадает.
Миниатюры
ICMP-запрос от компьютера.PNG  
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 22.12.2016 в 22:34.
Pridnya вне форума   Ответить с цитированием
Старый 22.12.2016, 22:30   #49
maxxir
Member
 
Аватар для maxxir
 
Регистрация: 28.11.2010
Адрес: Тольятти
Возраст: 46
Сообщений: 49
Вес репутации: 491/30
maxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of lightmaxxir is a glorious beacon of light
По умолчанию Re: Android VS LwIP

В том-то и фишка, что большинство сетевого оборудования будет работать,
и без учета этого, но некоторые производители наподобие
"Cisco", "Zyхel", "Juniper" (которые жестко следуют указаниям RFC'ов)
могуть выкидывать подобные фортели при подсоединении контроллеров.
По крайней мере, я для перестраховки эту масочку накладываю - хуже
не будет! Надеюсь Petr напишет как он победил эту беду.
maxxir вне форума   Ответить с цитированием
Старый 22.12.2016, 22:47   #50
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Android VS LwIP

Цитата:
Сообщение от maxxir Посмотреть сообщение
В том-то и фишка, что большинство сетевого оборудования будет работать,
и без учета этого, но некоторые производители наподобие
"Cisco", "Zyхel", "Juniper" (которые жестко следуют указаниям RFC'ов)
могуть выкидывать подобные фортели при подсоединении контроллеров.
По крайней мере, я для перестраховки эту масочку накладываю - хуже
не будет! Надеюсь Petr напишет как он победил эту беду.
Это всего лишь предположения. А Petr пишет
Цитата:
Сообщение от Petr Посмотреть сообщение
Отчитываюсь.

1) IP_DEFAULT_TTL (время жизни пакета) не должно быть 255. Сколько угодно, но не 255.
2) В MAC адресе устройства ни единого байта не должно быть нулевого(все отличны от нуля). Это уже приколы роутера (на мой взгляд). Но может кому будет полезно.
Я сейчас сижу за компом у которого MAC-адрес отображается (через командную строку ipconfig.exe -all) с нулевым байтом и это настоящий MAC-адрес.
Цитата:
Подключение по локальной сети 6 - Ethernet адаптер:
Состояние сети . . . . . . . . . : сеть отключена
Описание . . . . . . . . . . . . : ULi PCI Fast Ethernet Controller
Физический адрес. . . . . . . . . : 00-17-31-AD-FE-E2
Этот MAC соответствует ASUS (из списака OUI). И материнская плата у меня ASUS. Если бы нельзя было работать с MAC-адресом у которого хоть один нулевой байт, то таких OUI не выдавали бы производителям оборудования. А есть OUI с двумя нулевыми байтами.
Миниатюры
MAC-адрес.PNG   ASUS.PNG  
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 22.12.2016 в 22:58.
Pridnya вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Снова вопрос по LwIP Petr Cетевые протоколы и технологии 49 05.04.2016 19:10
Android SSH Общетехнические вопросы 5 16.03.2012 14:53
Платформа на Android SSH Общетехнические вопросы 24 19.10.2011 12:56
lwIP Bengan Общетехнические вопросы 4 19.11.2007 08:29


Часовой пояс GMT +3, время: 11:38.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot