Как организовать сеть, зная MAC-адреса (ARP-протокол)?
Модератор: Модераторы
Как организовать сеть, зная MAC-адреса (ARP-протокол)?
Здравствуйте!
Может кому-то приходилось решать подобную задачу: к интернету подключены главный ПК и терминалы (в качестве терминалов могут быть ПК или устройства на микроконтроллерах. С последними будет сложнее, т.к. может не оказаться готовых библиотек). Необходимо с терменалов передавать на главный и запрашивать с него данные. Всё это может быть удалено друг от друга на большие расстояния. MAC-адреса известны, IP в процессе работы могут изменяться (сотовой связи). На крайний случай, что не очень желательно, для главного ПК можно приобрести статический IP адрес. Знаю, что существует ARP-протокол, но использовать его не приходилось.
Ранее делал что-то подобное на основе GSM передачи данных, но сейчас такой вариант не подходит (дорого, при одновременном обращении доступ получает только один терминал, при загрузке сети неустойчивая связь и т.п.).
Буду благодарен за совет, ссылку, литературу, код.
Может кому-то приходилось решать подобную задачу: к интернету подключены главный ПК и терминалы (в качестве терминалов могут быть ПК или устройства на микроконтроллерах. С последними будет сложнее, т.к. может не оказаться готовых библиотек). Необходимо с терменалов передавать на главный и запрашивать с него данные. Всё это может быть удалено друг от друга на большие расстояния. MAC-адреса известны, IP в процессе работы могут изменяться (сотовой связи). На крайний случай, что не очень желательно, для главного ПК можно приобрести статический IP адрес. Знаю, что существует ARP-протокол, но использовать его не приходилось.
Ранее делал что-то подобное на основе GSM передачи данных, но сейчас такой вариант не подходит (дорого, при одновременном обращении доступ получает только один терминал, при загрузке сети неустойчивая связь и т.п.).
Буду благодарен за совет, ссылку, литературу, код.
IPv6 - там, вроде, есть шанс на глобальные адреса на основе MAC.
Все остальные протоколы вам через интернет никто не скоммутирует (только, если вложив в IP-протокол).
Добавлено спустя 15 минут 37 секунд:
IPv4 - можно обновлять сведения об IP-адресе сервера через доступный для всех участников ресурс: dyndns, noip и т.п., через файл на ftp или облаке, e-mail.
Все остальные протоколы вам через интернет никто не скоммутирует (только, если вложив в IP-протокол).
Добавлено спустя 15 минут 37 секунд:
IPv4 - можно обновлять сведения об IP-адресе сервера через доступный для всех участников ресурс: dyndns, noip и т.п., через файл на ftp или облаке, e-mail.
В локальной сети можно использовать протокол IPX.
https://ru.wikipedia.org/wiki/IPX
на удаленных сетях можно сделать шлюзы (IPX) <-> (TCP/IP) <====> (TCP/IP) <->(IPX)
Добавлено спустя 4 минуты 43 секунды:
шлюз(gateway) через TCP
https://github.com/intangir/ipxnet
описание протокола и пример
https://xakep.ru/2000/07/17/10113/
Добавлено спустя 41 минуту 27 секунд:
Компонент программирования на IPX для Delphi
https://hpc.name/downloads.php?do=file&id=477
Вообще можно ip пакеты посылать. но тогда нужно прослушивать все входящие пакеты чтобы принять нужный пакет.
https://ru.wikipedia.org/wiki/IPX
на удаленных сетях можно сделать шлюзы (IPX) <-> (TCP/IP) <====> (TCP/IP) <->(IPX)
Добавлено спустя 4 минуты 43 секунды:
шлюз(gateway) через TCP
https://github.com/intangir/ipxnet
описание протокола и пример
https://xakep.ru/2000/07/17/10113/
Добавлено спустя 41 минуту 27 секунд:
Компонент программирования на IPX для Delphi
https://hpc.name/downloads.php?do=file&id=477
Вообще можно ip пакеты посылать. но тогда нужно прослушивать все входящие пакеты чтобы принять нужный пакет.
- serbod
- постоялец
- Сообщения: 449
- Зарегистрирован: 16.09.2016 10:03:02
- Откуда: Минск
- Контактная информация:
Без IP вряд ли получится, и статический IP для сервера нужен. Но если есть много свободного времени, то можете поэкспериментировать с отправкой ethernet-пакетов. Но привыкайте к мысли, что MAC это не адрес, а серийный номер. И что у IP клиента можно забыть сразу же после отправки ответа.
Если линукс, то можно еще в сторону TOR посмотреть.
-
MysticCoder
- постоялец
- Сообщения: 154
- Зарегистрирован: 14.09.2013 00:20:28
на сервере dyndns, no-ip, или что то подобное, ну или как вариант сервер может публиковать свой ип через сервисы типа icq, telegram, mail, файл на бесплатном сайте, etc. ну а терминалы уже по tcp\udp стучатся к серваку. если скорость не критична, то можно вообще все общение построить на сторонних сервисах, например, сервер или терминалы, неважно, оставляют инфу друг другу на сайте через пхп скрипт. библиотеки http для микроконтроллеров вроде имеются.
- serbod
- постоялец
- Сообщения: 449
- Зарегистрирован: 16.09.2016 10:03:02
- Откуда: Минск
- Контактная информация:
dyndns и тому подобное - это когда много свободного времени и мало денег. А для работы только простое и надежное решение - статический IP. Если вы не знали, сотовые операторы могут менять IP клиента в любой момент просто так, чтоб жизнь малиной не казалась. А МТС даже статические меняла без предупреждения.
Есть вот такая программа http://acerfans.ru/faq/1307-kompyuternye-seti-lokalnaya-set-cherez-internet.html, которая позволяет организовать сеть без знания IP собеседников. Собственно поэтому и возник вопрос, как они это делают?
это аналогично teamviewer, Ammyy Admin и др. только под VPN.
Есть сервера которые организуют соединения. Клиенты которые имеют серые адреса, спокойно через интернет подключаются друг с другом.
(комп №1) - серая сеть - (NAT) - интернет - (Сервер для сервиса Hamachi) - интернет - (NAT) - серая сеть - (Комп №2)
Есть сервера которые организуют соединения. Клиенты которые имеют серые адреса, спокойно через интернет подключаются друг с другом.
(комп №1) - серая сеть - (NAT) - интернет - (Сервер для сервиса Hamachi) - интернет - (NAT) - серая сеть - (Комп №2)
Последний раз редактировалось olegy123 30.08.2017 21:37:21, всего редактировалось 1 раз.
shyub писал(а):как они это делают?
Используют стандартную сеть windows с IP адресами.
Там в их статье (по приведённой вами ссылке) есть описание. Начинается с фразы: "Настройка этой сети полностью аналогична локальной."
если тебе нужно связать две приватные (серые сети) через интернет - то для этого существует VPN.
Hamachi тоже организует VPN сеть, но через свои публичные сервера - услуга для ленивых или незнающих как своими руками делать VPN админов.
Добавлено спустя 20 минут 13 секунд:
вообще то если у вас есть приватные данные - а то кто сделал Hamachi? Кто предоставляет свои ресурсы на халяву?
АНБ, Моссад, Ми-6, ОАО ФСБРФ, Китайская Компартия, корпарации по производству шампуней, отравляющих веществ и ГМО, Сицилиская Cosa Nostra, Неаполитанская Каморра, Trump Tower, Trump Tower Moscow, Сатанисты, Христяне ищущие Сатанистов, Фашисты, ЛГБТ, Фетешисты, Ватники, Навальнята-школьники, СБУ, Правый сектор, СССР, ЦРУ, ГРУ, ФБР, ГИББД, сам Путин, ФРС, ЦБ, Масоны, Иллюминаты, Обама, инопланетяне - теперь может спокойно лазить по вашей сети, а может иметь доступ к вашему компу..
ленивый админ - находка для АНБ.
Hamachi тоже организует VPN сеть, но через свои публичные сервера - услуга для ленивых или незнающих как своими руками делать VPN админов.
Добавлено спустя 20 минут 13 секунд:
вообще то если у вас есть приватные данные - а то кто сделал Hamachi? Кто предоставляет свои ресурсы на халяву?
АНБ, Моссад, Ми-6, ОАО ФСБРФ, Китайская Компартия, корпарации по производству шампуней, отравляющих веществ и ГМО, Сицилиская Cosa Nostra, Неаполитанская Каморра, Trump Tower, Trump Tower Moscow, Сатанисты, Христяне ищущие Сатанистов, Фашисты, ЛГБТ, Фетешисты, Ватники, Навальнята-школьники, СБУ, Правый сектор, СССР, ЦРУ, ГРУ, ФБР, ГИББД, сам Путин, ФРС, ЦБ, Масоны, Иллюминаты, Обама, инопланетяне - теперь может спокойно лазить по вашей сети, а может иметь доступ к вашему компу..
ленивый админ - находка для АНБ.
MAC адреса не прокатят. Они "работают" только внутри локальной сети (через коммутаторы), через интернет они теряются, маршрутизаторы подставляют свои маки.
Стандартный путь - иметь сервер регистрации девайсов с постоянным Ip адресом. Девайс шлет ему свой УИД (уникальный идентификатор девайса, ну например тот же мак-адрес) сервер определяет его ip и заносит его в таблицу соответствия ip-uid
Далее он сообщает девайсу ip адрес нужного ему сервера и устройства начинают обмен между собой, либо сервер регистрации может выступать в качестве proxy-сервера(инфа с девайса идет на прокси а уже потом на сервер).
Чтобы с одного ip адреса работало несколько терминалов их нужно разносить по портам. У TCP протокола указывается еще и порт. Т.е. таблица соответствия на сервере регистрации будет такой uid-ip-port
Вообще GSM тормозные каналы, по ним не стоит передавать объемные данные или слишком часто слать пакетики... LTE лучше.
И еще, есть прикольная програмулина Wireshark - перехватчик пакетов по сети, полезное средство для отладки программы. Дает понимание как все работает
Стандартный путь - иметь сервер регистрации девайсов с постоянным Ip адресом. Девайс шлет ему свой УИД (уникальный идентификатор девайса, ну например тот же мак-адрес) сервер определяет его ip и заносит его в таблицу соответствия ip-uid
Далее он сообщает девайсу ip адрес нужного ему сервера и устройства начинают обмен между собой, либо сервер регистрации может выступать в качестве proxy-сервера(инфа с девайса идет на прокси а уже потом на сервер).
Чтобы с одного ip адреса работало несколько терминалов их нужно разносить по портам. У TCP протокола указывается еще и порт. Т.е. таблица соответствия на сервере регистрации будет такой uid-ip-port
Вообще GSM тормозные каналы, по ним не стоит передавать объемные данные или слишком часто слать пакетики... LTE лучше.
И еще, есть прикольная програмулина Wireshark - перехватчик пакетов по сети, полезное средство для отладки программы. Дает понимание как все работает
