Zer0Galaxy
Гуру-
Публикации
1 220 -
Зарегистрирован
-
Посещение
-
Победитель дней
189
Тип публикации
Блоги
Профили
Форум
Багтрекер
Магазин
Все публикации пользователя Zer0Galaxy
-
В этом телепорте установлен WiFi-роутер. Радиус действия - 400 блоков.
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Координаты дома?
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Поставлю я тебе маршрутизатор. Скажи только где
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Хе. А как иначе выжить бедному хакеру в этом жестоком мире?
- 162 ответа
-
- 1
-
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Да, действительно, адрес отправителя можно подменить. Но перехватить пакет, предназначенный не тебе, не удастся.
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Не понял, к чему это ты.
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Помогите понять, что не так в управлении дрона
Zer0Galaxy ответил в вопрос SergOmarov в Разные (отсортировать)
Очевидно, для eeprom дрона создается новая папка на сервере. Т.е. eeprom получает уникальный id и стакаться уже ни с кем не может. К стати, как снимать дрона? А то я поставил, а снять не могу. -
Нет. Проблема избавления от двоеточий передо мной остро не стоит.
- 14 ответов
-
Помогите понять, что не так в управлении дрона
Zer0Galaxy ответил в вопрос SergOmarov в Разные (отсортировать)
tonumber() -
Помогите понять, что не так в управлении дрона
Zer0Galaxy ответил в вопрос SergOmarov в Разные (отсортировать)
Функция term.read возвращает во-первых строку, а не число, во-вторых строка эта заканчивается символом "/n". -
Это в том случае, если Сябро собирается строить свою сеть, никак не связанную с нашей. Но тогда и библиотеку он напишет свою, скорее всего. Если интегрироваться в существующую сеть, нужна библиотека минимум второго уровня т.е. для работы через связанные платы. Не бойся вайфая. В ОС он намного безопаснее, чем в СС
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Да, это выполнялось в самом чистом Луа, который мне удалось найти. А что если сделать как-то так: a=1 e={print=print, a=2} e.load=function(str) return load(str,nil,nil,e) end load(" print(a) load('print(a)')()",nil,nil,e)()
- 14 ответов
-
a=1 load(" print(a) load('print(a)')()",nil,nil,{print=print, load=load, a=2})() Результат: 2 1 Вывод: не хочешь давать доступ к руту - не разрешай в среде функцию load
- 14 ответов
-
Я давно подозревал, что функция serialization.unserialize - дыра для хакера Хотя, нет. Что бы дыра стала дырой в окружении должна быть разрешена функция load. А в serialization.unserialize - только math.huge
- 14 ответов
-
Вот лабиринтик: http://habrastorage.org/getpro/habr/post_images/ceb/7ee/5f3/ceb7ee5f3d4ad81b4d9ff390f4cff97e.png
-
У тебя свой дата-центр? Где? Когда? Обязательно поставим роутер
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Самый легкий вариант не всегда самый лучший. Теоретически каждое знакоместо должно занимать в файле 2-3 байта. 1 байт - цвет и 1-2 байта - символ. А если еще упаковку применить ...
- 18 ответов
-
- opencomputers
- lua
-
(и ещё 1 )
Теги:
-
А можно я по теме? Считаю, что хранить картинку в виде сериализованной таблицы крайне не рационально. Куча лишних скобок, пробелов и запятых. Не хочешь подумать над более компактным форматом?
- 18 ответов
-
- 2
-
-
- opencomputers
- lua
-
(и ещё 1 )
Теги:
-
Сам по себе OpenNet это трехуровневая сеть, всех особенностей которой не знаю даже я. А WiFi на сегодняшний день считается основным способом доступа пользователей к сети. Есть и другие, но они не для всех.
- 162 ответа
-
- OpenComputers
- OpenNet
-
(и ещё 1 )
Теги:
-
Создаем собственный сайт в сети OpenNet (часть 0x00)
Zer0Galaxy добавил запись в блоге в Сайт в сети OpenNet
И так, Вы попали в белый список, построили дом, добыли ресурсов, собрали свой первый компьютер, написали первую программу. Настало время поведать о своих успехах миру. Лучший способ сделать это - создать OpenNet-сайт с изложением всех своих достижений. Для этого Вам понадобится WEB-сервер. Это может быть обычный ОС компьютер. Желательно обеспечить его бесперебойным питанием и разместить в постоянно прогруженном чанке. В противном случае Ваш сервер может оказаться временно недоступным. Вопрос питания и прогрузки чанка я оставляю на усмотрение владельца и расскажу о требованиях к аппаратному и программному обеспечению сервера. Сервер должен содержать беспроводную сетевую плату, а это значит, что системный блок сервера должен быть не ниже 2-го уровня. Требования к остальным компонентам самые минимальные. Если же Вы собираетесь использовать этот компьютер не только как сервер, но и создавать и просматривать на нем же свои страницы, комплектация должна быть получше. Вот, что бы я рекомендовал: - Системный блок - 3-го уровня; - Процессор 2-го уровня; - Видеокарта 2-го уровня; - беспроводная сетевая карта; - две линейки ОЗУ 2-го уровня; - жесткий диск 2-го уровня; - Lua BIOS; - монитор 2-го уровня; - клавиатура. Установку программного обеспечения начинаем с операционной системы. Надеюсь, Вы знаете как это делается. После установки OpenOS пытаемся подключиться к сети OpenNet. Для этого заходим в интерпретатор Lua, копируем в буфер обмена следующую строку: on=component.modem;e=event;on.open(1)on.broadcast(1,"","","getip")function m()r={e.pull(10,"modem_message")}end;m()ud="update"ip=r[6]function sv()on.send(r[3],1,ud,ip,ud,"getFile","client/"..p)m()filesystem.makeDirectory(filesystem.path(p))f=io.open(p,"w")f:write(r[8])f:close()end p="lib/opennet.lua"sv()p="on/update.lua"sv()loadfile(p)("install") вставляем ее в редактор Lua кнопочкой Ins и запускаем на выполнение. В результате выполнения из Сети будут скачаны все необходимые для подключения файлы и разложены по нужным папкам. Если же чудо не произошло, скорее всего Вы находитесь вне зоны покрытия OpenNet. Обратитесь ко мне и я постараюсь помочь. Если установка прошла успешно, перегружаем компьютер и создаем папку /web mkdir webcd web В этой папке будут храниться страницы нашего будущего сайта. Почему отдельная папка а не корень? Да потому, что к ней будет осуществляться удаленный доступ, причем и на чтение и возможно на запись. И если бы это был корень диска, то каждый хакер при желании смог бы почистить на нашем сервере весь диск. Имена файлов, содержащих страницы сайта могут быть любыми, но непременно должны присутствовать два файла: "index" и "404". Файл index должен содержать главную страницу сайта, а 404 - текст, который будет возвращаться при попытке открыть несуществующую страницу. Создадим файл index, содержащий текст: Главная страница моего сайта И файл 404 с текстом: Извините, запрашиваемая страница не найдена. Для начала попытаемся открыть файл index браузером прямо с сервера: onBrowser /web/index Вот что мы должны увидеть: Поскольку мы указали путь к файлу, начинающийся с косой черты, файл будет открываться браузером не по сети, а с локального компьютера. (продолжение следует) -
function getScreen() repeat ip, screenRaw=opennet.receive() until ip==initial for sym=1, #screenRaw-160 do io.write(unicode.sub(screenRaw, sym, sym)) end end
-
event=require"event" function listmsg(eventName, receiverAddress, senderAddress, port, distance, ...) local h = fs.open('@','a') h:write('--'..os.date()..' From:'..senderAddress..'\n'..table.concat({...},'\n')) h:close() end event.listen("modem_message", listmsg) Как то так. Можно еще порт и дистанцию прилепить
