Перейти к содержимому
Калькуляторы

poofeg

Пользователи
  • Публикации

    17
  • Зарегистрирован

  • Посещение

Все публикации пользователя poofeg


  1. У нас DHCP сервер стоит за релеем. Некоторые DHCP клиенты в unicast пакеты (которые не ловятся релеем) ставят флаг BROADCAST и поэтому сервер отвечает широковещательным пакетом. Ясное дело он не доходит до клиента. Поэтому сделал патч, чтобы сервер игнорировал этот флаг. Если кому нужно. dhcpd-always-unicast-poofeg.patch.txt
  2. А зачем у вас в подсказке ключ сменился с правильного -dd на неправильный -bb? :) Точно, исправил. Невнимательность.
  3. SNR-VP-7010

    Тоже испытываю проблемы с дисплеем. Никто не знает как бороться? Если проблема аппаратная, было бы хорошо в настройках иметь возможность ежедневного авторебута.
  4. Abram, нашел кусок тут. disappointed, StartCom выпустил. С RST попробую.
  5. Есть у кого-нибудь список user agent'ов которые лучше не редиректить? Например по логам смотрю MRA долбится во всю на биллиг у клиента в минусе. И вопрос близкий к теме, почему Opera не устанавливает безопасное соединение при отсутствующем интернете? У меня редирект происходит на https страницу биллинга, во всех браузерах нормально, а вот Opera долго думает, а потом говорит "Не удалось подключиться к удалённому серверу". Запускаю Интернет и на эту же страницу Opera спокойно заходит.
  6. Не знаю как у вас, но в час пик, когда люди идут с работы 10 секунд не лишние. Тоже хотим ставить POS терминал.
  7. Разрешить запросы только на аплинке, отвечать можно со всех портов на DGS-3200-10: create access_profile profile_id 1 packet_content_mask offset_chunk_1 3 0x0000FFFF offset_chunk_2 4 0x00800000 config access_profile profile_id 1 add access_id 1 packet_content offset_chunk_1 0x00008899 offset_chunk_2 0x00000000 port 1-8 deny config access_profile profile_id 1 add access_id 2 packet_content offset_chunk_1 0x00008899 offset_chunk_2 0x00800000 port 1-8 permit На DES-1210-28/ME/B2: create access_profile packet_content_mask offset1 l2 0 0xFFFF0080 profile_id 1 config access_profile profile_id 1 add access_id 1 packet_content offset1 0x88990000 port 1-26 deny config access_profile profile_id 1 add access_id 2 packet_content offset1 0x88990080 port 1-26 permit
  8. Я на тоже взял на StartSSL. Меня привлекло то, что платишь один раз, а получаешь возможность далее в течение года выпускать сертификаты для разных доменов и сертификат для подписи кода.
  9. Вот пожалуй так. Клиентская база интернет провайдера очень разница по уровню компьютерных знаний. И если в конкретном случае удаленный помощник поможет решить проблему клиента быстрее, оставив его довольным, так почему бы не использовать его.
  10. У нас общий установщик для всего софта. Снес винду - приди с флешкой за установщиком (ну это для тех кто не в состоянии вбить IP-адрес на сетевой интерфейс). После установки запустится мастер, который базовые настройки для работы сети сделает. И вот клиенту можно снова помочь удаленно.
  11. С раскладкой все ок у TightVNC 2, а Aero я принудительно отключаю при подключении. Для проблем когда сеть все таки работает. Для не работающей сети можно посмотреть линк клиента на порту, мак в fdb, ответ на ping и т.д.
  12. А мы скоро внедрим немного измененный TightVNC, который создает обратное подключение к компьютеру тех. поддержки. Форма с одной кнопкой "Попросить помощи".
  13. а зачем настраивать querier и оставлять его выключеным?
  14. По трем IP-адресам. Внутренний IP-адрес источника, внешний начальный, внешний конечный. Для себя накидал программку, на вход 3 ip на выходе внешний ip. Потом вокруг нее написал парсер правил iptables на питоне и теперь счастлив. #include <stdio.h> #include <stdint.h> typedef uint8_t u8; typedef uint32_t u32; typedef uint64_t u64; #define JHASH_INITVAL 0xdeadbeef u32 parseIp(char *ipStr) { int i1, i2, i3, i4; sscanf(ipStr, "%d.%d.%d.%d", &i1, &i2, &i3, &i4); return (i1 << 24) + (i2 << 16) + (i3 << 8) + i4; } u32 rparseIp(char *ipStr) { int i1, i2, i3, i4; sscanf(ipStr, "%d.%d.%d.%d", &i1, &i2, &i3, &i4); return (i4 << 24) + (i3 << 16) + (i2 << 8) + i1; } static inline u32 rol32(u32 word, unsigned int shift) { return (word << shift) | (word >> (32 - shift)); } static inline u32 jhash_2words(u32 a, u32 b, u32 c) { a += JHASH_INITVAL; b += JHASH_INITVAL; c ^= b; c -= rol32(b, 14); a ^= c; a -= rol32(c, 11); b ^= a; b -= rol32(a, 25); c ^= b; c -= rol32(b, 16); a ^= c; a -= rol32(c, 4); b ^= a; b -= rol32(a, 14); c ^= b; c -= rol32(b, 24); return c; } int main(int argc, char *argv[]) { if (argc < 4) { printf("fail"); } u32 minip, maxip, srcip, j, result; minip = parseIp(argv[1]); maxip = parseIp(argv[2]); srcip = rparseIp(argv[3]); j = jhash_2words(srcip, 0, 0); j = ((u64)j * (maxip - minip + 1)) >> 32; result = minip + j; printf("%d.%d.%d.%d\n", (u8)(result >> 24), (u8)(result >> 16), (u8)(result >> 8), (u8)result); return 0; }