Tpy6okyp: Еще можно подумать в сторону облака. Правда за большой объем, скорее всего, придется платить. Кроме того встает вопрос с безопасностью, можно упаковывать данные 7z с паролем и архив лить в облако - будет безопасно, сжато и хорошо поддается автоматизации.
Кроме того облако не отменяет внешний диск, т.к. в облаках то же всякое случается.
Тогда вижу 2 варианта:
1.собираем все uid_table_2_item по каждому uid_table_1_item в одну строку с помощью group_concat, то же самое нужно сделать с массивом, потом отбираем простым сравнение.
2.Немного модифицируем запрос из моего посат, таким образом:
- заменяем в join заменяем not in (массив uid_table_2_item), на
uid_table_2_item=<первое значение из массива uid_table_2_item>
- нужно в запрос добавить столько аналогичных join конструкций, сколько значений в массиве (в каждом следующем join нужно сравнивать со следующим элементом массива).
- во фразе where отобрать
t3n.uid_table_2_item is not null
для каждого из добавленных join
Второй вариант прокатит, если в массиве ограниченное и достаточно не большое количество значений, запрос по второму варианту, нужно формировать динамически.
В первом варианте, можно попробовать group_concat заменить на что-нибудь, работающее с числами. Смысл в том, чтобы несколько значений представить в виде одного. Конкатенация не самый хороший вариант. Подошло бы хэширование, но не уверен что есть такая возможность.
В составе PuTTY есть утилита, plink, если не ошибаюсь, - она позволяет выполнять команды на удаленной машине. На Убунте создаете нужные сценарии, даете пользователю доступ к ним, потом plinkом их исполняете.
То что вам нужно, имхо.
На самом деле для полноты картины не хватает описание способа подключения WAN роутера, LAN FreeBSD и компов в LAN к сети. Я исходил из предположения, что все это хозяйство втыкается в один или несколько коммутаторов и находятся в одном широковещательном домене.
Почему работало раньше трудно сказать, не зная деталей прошлой конфигурации.
в join такое условие
convert(integer, address / 100) = home
Это в синтаксисе MS SQL, convert - преобразовывает результат деления в целое. Запишите то же самое для MySQL.
Но это костыльный вариант, т.к. если номер квартиры будет из 1 или 3 цифр, то он не работает.
По уму надо делить номер домов и квартир. От подобных объединений всегда больше гемору, чем профита, хотя часто в начале это и не заметно.
SyavaSyava: Действительно, про все компы речи не было. Юрий Ерусалимский: В общем случае, если доступ нужен к 1-2-3 компам или сервисам, то проброс портов на NAT самое простое решение. Если же нужно больше (например хотите админить сетку удаленно или нужно организовать доступ пользователей ко всем ресурсам внутри сети) - ВПН.
Похоже, что ВПН клиент получает адрес от DHCP сервера, который раздает адреса и в локалке. Поэтому у клиента, возможно, перезаписывается таблица маршрутизации не зависимо от наличия галки. Надо проверить.
Я смотрю, что у вас в ВПН и в локалке за сервером используются одни и те же адреса. Возможно проблема в этом. Если это возможно выделите для ВПН отдельную подсеть.
1.Снимаем галку.
2.На клиенте прописываем маршрут к сети за ВПН сервером (в команде route add надо указывать не фактический адрес ВПН сервера , а виртуальный ВПН адрес сервера).
vakym: Тут ключевое слово - маршрутизация. Если каждый отдельно взятый компьютер знает правильный маршрут до цели, то он будет иметь доступ.
Вы же в своем вопросе никакой конкретики не приводите (сетевые настройки клиента, сервера, типовые для компов в сети за сервером).
ВПН сервер и так будет иметь доступ к клиенту, а вот чтоб доступ был в сети за сервером, то возможны варианты:
1.ВПН сервер является и шлюзом по умолчанию для хостов в сети, тогда доступ к ВПН клиенту будет автоматически.
2.ВПН сервер не является шлюзом по умолчанию для хостов в сети - нужно на всех хостах в сети, которым необходим доступ к ВПН клиенту прописать маршрут к нему через ВПН сервер.
Кстати, возможно на сервере есть соответствующая настройка - указать новый маршрут для клиента.
Я практически не пользуюсь PPTP (из-за безопасности), толком не знаю его возможностей, но в OpenVPN это есть - можно все настроить на стороне сервера, удобно когда клиентов куча.