Как стать автором
Обновить
9
0
Сергей @schebotar

Пользователь

Отправить сообщение

Активно использует кэширование в оперативной памяти. Если на маленьком VPS крутить для личного пользования жрало до 800-900 Мб.

Но можно ограничить https://doc.owncloud.com/ocis/next/deployment/services/s-list/storage-system.html#caching

Тоже заинтересовался и сегодня за 10 минут поднял.

Выглядит здорово, работает быстро. Но в наличии вроде как только синхронизация файлов, даже контактов и календаря нет. Хотя последние можно и в Baïkal держать.

Из печального: мне нужной федерации пока нет. Ресурсов для функционала многовато потребляет. Привык видеть go-сервисы менее прожорливыми.

Соглашусь. Молдову получил во время пандемии по корням, без проблем. Как в воду глядел.

Чтобы пользоваться всеми современными возможностями .NET и не ограничивать себя VBA.
Навскидку, я писал плагин, конвертирующий таблицу со спецификацией в Excel в девятиграфку по ГОСТ в чертежном формате, который открывается в AutoCAD. Использовал для этого библиотеку netDXF. С VBA такой финт не прошел бы.

Да, с последним обновлением обеспечили поддержку.

Единственный нюанс, на целевой машине должен быть установлен соответствующий рантайм.

С VSTO не работал.

Среди преимуществ ExcelDNA называют большую производительность, и то что это Open Source решение.

Один из побочных эффектов на самом деле, это то что Windows Defender очень не любит такие надстройки и может видеть в них вирус даже если ты их пишешь сам и знаешь что там зловреда нет.

Windows-only, насколько мне известно.

Писал на C#
Вам немного разобраться нужно что такое .NET платформа.
Она поддерживает и VB, и например F#. На сайте той же библиотеки что я упомянул есть примеры и на этих языках. Они потом все в MSIL компилируются.

Я подобную рутинную задачу решил написав надстройку для Excel с помощью библиотеки Excel-DNA. У меня входные данные только Excel файлы правда, но парсер можно и вордовских написать, без проблем. Так реализовал экспорт спецификации в девятиграфку в dwt например. Тут же импорт другой будет.
Код на VB ваш в Excel-DNA тоже можно адаптировать. .NET же

.NET кстати на машине целевой возможно и есть, но рантайма нужной версии нет.

Как-то все очень громоздко. Целая IDE для скриптов.

Работаю с библиотекой ExcelDNA. Все пишется на C#, доступен COM, все объекты с которыми можно работать через VBA. В студии проект собирается в xll файл плагина Excel, который достаточно положить в нужную папку на компьютере пользователя и включить в настройках.

Я пользуюсь голым xray в docker в качестве клиента. У меня суффикс не заработал. В документации я такой настройки не нашел, подозреваю это некобокса обертка какая-то.

Спасибо, поэкспериментировал, победил кажется.

Я сделал два прокси на разные домены, один на CDN, другой напрямую. Через балансер. Такая связка заработала только так, конфиг клиента:

        "rules": [
            {
                "type": "field",
                "ip": [
                    "geoip:private"
                ],
                "outboundTag": "direct"
            },
            {
                "type": "field",
                "ip": [
                    "geoip:ru"
                ],
                "outboundTag": "ru_ip"
            },
            {
                "type": "field",
                "domain": [
                    "regexp:^([\\w\\-\\.]+\\.)ru$"
                ],
                "outboundTag": "ru_address"
            },
            {
                "type": "field",
                "inboundTag": [
                    "inbound"
                ],
                "balancerTag": "balancer"
            }
        ],
        "balancers": [
            {
                "tag": "balancer",
                "selector": [
                    "proxy_1",
                    "proxy_2"
                ]
            }
        ]
  

Соответственно нужны freedom-теги ru_ip, ru_address и inbound тег "inbound"

Сначала клиент пропускает локальные ip, затем ru айпишники, потом адрес по регекспу.

Если ничего не совпадает направляет на балансер.

Если сервер один, можно часть с балансерами удалить.

У меня вопрос по маршрутизации.

Попытался поставить правила geosite:ru и geoip:ru как здесь указано. Но geosite:ru вообще не принимает xray, ссылаясь на отсутствие директивы ru (cn работает, проверил). Проверка по geoip не вылетает, но похоже не работает.

В документации на сайте проекта и в репозиториях ru директив не нашел, китайцы делают под себя и правила обновляют для cn доменов.

Фильтровать российские домены смог только через regexp:

"rules": [
            {
                "type": "field",
                "domain": [
                    "regexp:^([\\w\\-\\.]+\\.)ru$"
                ],
                "outboundTag": "direct"
            }
        ]

Так все хорошо и ru домены идут напрямую.

Перешёл совсем недавно на Maddy на VPS. Но это не организация, а личная почта. Из соображений не экономии а privacy, не хочу чтобы мыло читало мою почту, тем более сейчас.

Maddy выбрал потому что VPS дешёвый, ресурсов мало, а здесь один бинарник на всё. Есть возможность ещё отдельно rspamd прикрутить, но спама пока нет.

Проблем с доставкой и приемом почты нет, репутация на сервисах проверки хорошая. Так что эксперимент считаю удачным.

Я ipv6 не использую. Поэтому такой вариант работает.

Возможно стоит попробовать включить поддержу ipv6 в самом docker

https://docs.docker.com/config/daemon/ipv6/

Криво (используется host-network потому что иначе не работает IPv6, а с ней оно слушает 48800 порт не только на localhost, а в открытую, ибо через 127.0.0.1 не работает - знающие люди, подскажите, как пофиксить)

Caddy запускаем во внешней сетке, скажем reverse-proxy. Ее естественно перед этим создаем

docker network create reverse-proxy
services:
  caddy:
    container_name: caddy
    image: caddy:latest
    restart: unless-stopped
    networks:
      - reverse-proxy
    ports:
      - "80:80"
      - "443:443"
      - "443:443/udp"
    volumes:
      - $PWD/Caddyfile:/etc/caddy/Caddyfile
      - ./data:/data
      - ./config:/config
networks:
  reverse-proxy:
    external: true

В этой же сетке запускаем контейнер xray.

version: '3'
services:
  xray:
    image: teddysun/xray
    container_name: xray
    volumes:
      - .:/etc/xray
    networks:
      - reverse-proxy

networks:
  reverse-proxy:
    external: true

В Caddyfile тогда будет

example.com {
  handle_path /myverysecretpath {
    reverse_proxy xray:48800      
  }
}

К слову можно у себя запускать прокси тоже в докере

config.json

{
    "log": {
        "loglevel": "warning"
    },
    "inbounds": [
        {
            "port": 10800,
            "listen": "0.0.0.0",
            "protocol": "socks",
            "settings": {
                "udp": true
            }
        }
    ],
    "outbounds": [
        {
            "protocol": "vless",
            "settings": {
                "vnext": [
                    {
                        "address": "example.com", 
                        "port": 443,
                        "users": [
                            {
                                "id": "UUID",
                                "encryption": "none"
                            }
                        ]
                    }
                ]
            },
            "streamSettings": {
                "network": "ws",
                "security": "tls",
                "tlsSettings": {
                    "serverName": "example.com" 
                },
                "wsSettings": {
                    "path": "/myverysecretpath" 
                }
            }
        }
    ]
}

docker-compose.yml

version: '3'
services:
  xray-client:
    image: teddysun/xray
    container_name: xray-client
    ports:
      - "10800:10800"
    volumes:
      - .:/etc/xray

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность

Специализация

Специалист
Git
Linux
Docker
OOP
C#
.NET
ASP.NET MVC
ASP.Net
Database