Перейти к содержимому
  • 0
Zucker

Модемы из OpenComputers

Вопрос

В последней сборке OC может один сервер содержать в себе до 4 мадемов, в зависимости от конфигурации; но при выполнение команды send или broadcast и сигнал выходит с одной карты.

Вопрос в том, как переключить главный компонент в modem, сетевой карте?

Была идея через команду менять главный компонент, но главный компонент меняется после перезагрузки программы

Изменено пользователем Zucker

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендуемые сообщения

А теперь нормальный способ получения прокси под все модемы.

local modem = {}
--запись всех модемов в таблицу. Можно использовать modem[1-4] для работы 
for address, compType in component.list("modem") do
  table.insert(modem, component.proxy(address))
end
--Упрощение, перевод четырех модемов в отдельную переменную. Теперь можно писать просто modem1, modem 3 и т.д.
local modem1, modem2, modem3, modem4 = table.unpack(modem)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Была идея с изменением главного компонента, но главный компонент меняется после res. программы

Что еще за «res. программа»?

 

component.setPrimary(componentType: string, address: string)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В последней сборке OC может один сервер содержать в себе до 4 мадемов, в зависимости от конфигурации; но при выполнение команды send или broadcast и сигнал выходит с одной карты.

Вопрос в том, как переключить главный компонент в modem, сетевой карте?

Была идея с изменением главного компонента, но главный компонент меняется после res. программы

А что мешает устанавливать главный компонент в самой программе? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
component.setPrimary(componentType: string, address: string)

 

эта команда меняет компонент, но с другой сетевой платы начинает отправлять сигналы только после перезагрузи программы.

 

Изменено пользователем Zucker

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

эта команда меняет компонент, но с другой сетевой платы начинает отправлять сигналы только после перезагрузи команды

 

Потому что require("component").modem как раз таки и получает прокси компонента. Просто прописывай require после setPrimary и будет тебе счастье. Соответственно, если есть желание использовать несколько модемов сразу то нужно несколько require, но проще будет разобраться с прокси. Если нужно могу помочь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Просто прописывай require после setPrimary и будет тебе счастье. Соответственно, если есть желание использовать несколько модемов сразу то нужно несколько require, но проще будет разобраться с прокси.

А это еще зачем? Ты вроде бы любитель не выполнять require лишний раз. Зачем же сейчас выполнять require повторно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А это еще зачем? Ты вроде бы любитель не выполнять require лишний раз. Зачем же сейчас выполнять require повторно?

require("component").<component> возвращает прокси основного компонента. Чтобы использовать компонент нам нужен его прокси. Чтобы использовать 4 модема нам нужно получить 4 прокси под каждый из них. Тут то require и помогает. Это конечно не идеальный вариант, но при этом он рабочий и простой для новичка.

comp.setPrimary("modem", "xx1")
modem1 = require("component").modem
comp.setPrimary("modem", "xx2")
modem2 = require("component").modem
comp.setPrimary("modem", "xx3")
modem3 = require("component").modem
comp.setPrimary("modem", "xx4")
modem4 = require("component").modem

--Получили 4 прокси и теперь можем использовать разные модемы.
modem4.send("xx2","Hello")
--Тут мы получаем сообщение на свой же компьютер но уже со второго модема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А теперь нормальный способ получения прокси под все модемы.

Вот именно. И чем для новичка был проще вариант с повторяющимся require?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот именно. И чем для новичка был проще вариант с повторяющимся require?

Меньше думать :D Для кого-то for ... in ... do  - сложна

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В последней сборке OC может один сервер содержать в себе до 4 мадемов, в зависимости от конфигурации; но при выполнение команды send или broadcast и сигнал выходит с одной карты.

Вопрос в том, как переключить главный компонент в modem, сетевой карте?

Была идея через команду менять главный компонент, но главный компонент меняется после перезагрузки программы

Я вот одного понять не могу, зачем в компе несколько модемов нужно. Чтобы разные порты прослушивать? Разве нельзя всё на одном сделать? Один ведь модем может спокойно несколько портов прослушивать. Или дело в адресе модема к которому привязываются другие ЭВМ? По моему один модем вполне может справиться с любой задачей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я вот одного понять не могу, зачем в компе несколько модемов нужно. Чтобы разные порты прослушивать? Разве нельзя всё на одном сделать? Один ведь модем может спокойно несколько портов прослушивать. Или дело в адресе модема к которому привязываются другие ЭВМ? По моему один модем вполне может справиться с любой задачей.

Значит нужны определенные адреса. Или например симуляция на сервере работы нескольких пк. Вариантов много. Я бы например использовал несколько модемов для супер-пупер системы шифрования.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Значит нужны определенные адреса. Или например симуляция на сервере работы нескольких пк. Вариантов много. Я бы например использовал несколько модемов для супер-пупер системы шифрования.

1. Симуляция работы нескольких ПК - вариант хреновый. Нет полноценной многопоточности == проги будут лагать.

Аналогично работают телефоны с двумя и более сим-картами. Ты задействуешь при звонке только 1 из карт, а другие в это время отдыхают.

2. Нужны определённые адреса - у каждого модема он свой уникальный. И разницы нет какой использовать.

3. "Супер-пупер" система шифрования - тут я вообще потерял дар речи. Какое отношение к криптографии имеет модем ума не приложу. По сути нет необходимости посылать сигналы от компа самому себе. Ведь это и без модемов всё делается.

 

Здесь речь идёт чётко о компе в который встроили несколько модемов. А это равносильно засунуть в комп 2-3 платы на красном камне. Конечно можно, но бесполезно. В робот же не засовывают 2 и более улучшений одного вида. Потому что нерационально.

 

Было бы круто если бы местные мастера луа дали окончательный ответ: где можно применять компы с несколькими модемами и рационально ли это.

А до этого момента я буду агностиком в этом вопросе. То есть буду находится в ожидании весомых аргументов от более опытных прогеров.

Изменено пользователем qwertyMAN

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

...

2. Ну мы же не знаем что это за программа там. К примеру один модем сервера передает на компьютер адрес того модема, который будет "обслуживать" этот компьютер и компьютер начинает игнорировать сигналы от любых других модемов. Так можно обеспечить безопасность работы программы, не используя связанных карт или send'а. Чем не своеобразный метод безопасности?

По поводу третьего мне долго описывать. Я не про кодер, да и шифрованием не увлекаюсь, но думаю, что передавая шифрованное послание кусками, через разные модемы, которые будут расшифровываться исходя из адресов модемов, что послали данные - не плохая идея.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2. Ну мы же не знаем что это за программа там. К примеру один модем сервера передает на компьютер адрес того модема, который будет "обслуживать" этот компьютер и компьютер начинает игнорировать сигналы от любых других модемов. Так можно обеспечить безопасность работы программы, не используя связанных карт или send'а. Чем не своеобразный метод безопасности?

По поводу третьего мне долго описывать. Я не про кодер, да и шифрованием не увлекаюсь, но думаю, что передавая шифрованное послание кусками, через разные модемы, которые будут расшифровываться исходя из адресов модемов, что послали данные - не плохая идея.

А что мешает передавать сообщение напрямую на заданный адрес? Никто по идее не сможет перехватить сообщение. Да и если не ошибаюсь в каком то моде были машины поддерживающие алгоритмы кодирования информации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А что мешает передавать сообщение напрямую на заданный адрес? Никто по идее не сможет перехватить сообщение. Да и если не ошибаюсь в каком то моде были машины поддерживающие алгоритмы кодирования информации.

Так ничто не мешает, но зато это типа - реализм. В жизни же вафля не способна передать данные на определенную антенну.  А то что есть мод для шифрования, не мешает брать и придумывать свое.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ах, вот, значит, для чего серверам нужны четыре слота: один модем передает адрес второго модема, чтобы тот начал передачу, второй передает адрес третьего, но работать в конечном итоге будет четвертый. Но кто даст гарантию, что использование четырех модемов обеспечит достаточный уровень безопасности?

 

А то что есть мод для шифрования, не мешает брать и придумывать свое.

Придумывать своё – это круто! Не круто называть первую подвернувшуюся идею супер-пупер системой и оправдывать ею использование четырех модемов в одном компьютере.

 

Так ничто не мешает, но зато это типа - реализм. В жизни же вафля не способна передать данные на определенную антенну.

Стремление к реализму – это вообще замечательно! Но реальные пацаны не забивают все свободные слоты сетевыми адаптерами. Они используют и придумывают новые алгоритмы шифрования и аутентификации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Так ничто не мешает, но зато это типа - реализм. В жизни же вафля не способна передать данные на определенную антенну.  А то что есть мод для шифрования, не мешает брать и придумывать свое.

Да ну его такой реализм. Когда взломают твою аппаратуру на модемах и станут ей управлять, по другому взглянешь на этот вопрос.

Я у какого-то чувака на IT видел крутую прогу. Она просто ловит все сообщения и пересылает их снова. В итоге все сообщения принятые дублируются. Отличное средство против гриферов-нубов, которые используют модемы как ты - "реалистично", без передачи напрямую на адрес модема.

 

И да насчёт нескольких модемов в одном компе.

Давай проведём аналогию с тремя голубями которые летят от точки А к точки Б и передают одно письмо в трёх отрывках которое там складывается.

Вопрос, что мешает охотнику подбить этих трёх голубей и прочитать полный текст послания?

Изменено пользователем qwertyMAN

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

 

Придумывать своё – это круто! Не круто называть первую подвернувшуюся идею супер-пупер системой и оправдывать ею использование четырех модемов в одном компьютере.
Я лишь ответил на вопрос, что можно придумать с несколькими адаптерами. Конечно я понимаю, что не всем дано понимать сарказм, но стоит быть чуточку добрее что ли.

 

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я лишь ответил на вопрос, что можно придумать с несколькими адаптерами. Конечно я понимаю, что не всем дано понимать сарказм, но стоит быть чуточку добрее что ли.

 

 

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

 

Если они телепортируются по адресу, то их не поймать, вот что я знаю наверняка.

 

Можно написать прогу которая бы просто отлавливала все сообщения от всех портов, сохраняла их в огромную базу данных, со всеми свойствами, с какого порта отправлено сообщение, какой адрес отправителя и так далее. В конечном итоге с этой инфой можно делать что угодно, применять все возможные виды дешифровки.

 

Да, конечно, ты предлагаешь разбивать сообщение на части. Но есть одно но. Если они будут идти по порядку - их легко будет склеить. Да и смысл разбивать сообщение несколькими модемами, если эту задачу может совершить лишь 1 модем. И отправить их по трём портам например. Я не пойму зачем усложнять если всё можно одним модемом сделать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я лишь ответил на вопрос, что можно придумать с несколькими адаптерами. Конечно я понимаю, что не всем дано понимать сарказм, но стоит быть чуточку добрее что ли.

Теперь понял. Буду добрее. Сарказм – это круто!

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

Расшифровать можно что угодно. В случае невероятного везения – очень быстро, но скорее всего, за сотню-другую лет. За это время многопоточная команда соколов перехватит и выносливых, и быстрых, и увертливых. Многократно.

Хотя, стоп! Это опять был сарказм?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...