Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   ISA Server / Microsoft Forefront TMG (http://forum.oszone.net/forumdisplay.php?f=98)
-   -   [решено] Не пропускает прокси, возможно кривой wpad или прокси ip (http://forum.oszone.net/showthread.php?t=277180)

gfagnum 05-02-2014 17:29 2303362

Не пропускает прокси, возможно кривой wpad или прокси ip
 
Доброго времени суток!
На предприятии крутится TMG 2010 и до недавнего времени проблем не было, но щас началась какая-то жуть, а именно:
1. При запуске браузера он около минуты может тупить и не открывать ни одну страницу, потом все нормально может быть, потом опять периодический затуп. Грешили на провайдера - те упорно твердят, что все нормально - проблемы у вас.
2. Руководство настойчиво требует iTunes...ну окей, думаю, поставил тунец, а он не подключается к itunes store, полез в логи ТМГ и обнаружил:

Стал разбираться, что за 157 ip, обнаружил:

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

Рискну предположить, что может быть как-то связано с файлами авто настроек прокси:

Перешел по указанному адресу и у меня на компьютер загрузился файл array.dll, открыв который я обнаружил следующее:
читать дальше »
//Copyright (c) 1997-2006 Microsoft Corporation
BackupRoute="DIRECT";
UseDirectForLocal=true;
ConvertUrlToLowerCase=false;
function MakeIPs(){
}
DirectIPs=new MakeIPs();
cDirectIPs=0;
function MakeCARPExceptions(){
this[0]="*.windowsupdate.com";
this[1]="windowsupdate.microsoft.com";
this[2]="*.windowsupdate.microsoft.com";
this[3]="*.update.microsoft.com";
this[4]="download.windowsupdate.com";
this[5]="download.microsoft.com";
this[6]="*.download.windowsupdate.com";
this[7]="wustat.windows.com";
this[8]="ntservicepack.microsoft.com";
this[9]="forefrontdl.microsoft.com";
}
CARPExceptions=new MakeCARPExceptions();
cCARPExceptions=10;
function MakeNames(){
this[0]="*.sysonline.ru";
this[1]="*.local";
this[2]="www.finam.ru";
}
DirectNames=new MakeNames();
cDirectNames=3;
HttpPort="8080";
cNodes=1;
function MakeProxies(){
this[0]=new Node("192.168.5.157",1732457516,1.000000);
}
Proxies = new MakeProxies();
function Node(name, hash, load){
this.name = name;
this.hash = hash;
this.load = load;
this.score = 0;
return this;
}
function IpSubnet(ip, mask, prefix){
this.ip = ip;
this.mask = mask;
this.prefix = prefix;
var isIpV4Addr = /^(\d+.){3}\d+$/;
this.isIpv6 = !isIpV4Addr.test(ip);
return this;
}
var pfDnsResolve, pfMyIpAddress, pfIsInNet;
function DnsResolve(name){
return dnsResolve(name);
}
function DnsResolveEx(name){
return dnsResolveEx(name);
}
function IsInNet(ip, subnet){
var isIpV4Addr = /^(\d+.){3}\d+$/;
if(subnet.isIpv6 || !isIpV4Addr.test(ip)){
return false;
}
return isInNet(ip, subnet.ip, subnet.mask);
}
function IsInNetEx(ip, subnet) {
var isIpV4Addr = /^(\d+.){3}\d+$/;
if(subnet.isIpv6 || !isIpV4Addr.test(ip)){
return false;
}
return isInNetEx(ip, subnet.prefix);
}
function MyIpAddress(){
return myIpAddress();
}
function MyIpAddressEx(){
return myIpAddressEx();
}
function ExpMatch(str, exp){
if (ConvertUrlToLowerCase)
{
str = str.toLowerCase();
}
return shExpMatch(str, exp);
}
function FindProxyForURL(url, host){
pfDnsResolve = DnsResolve;
pfMyIpAddress = MyIpAddress;
pfIsInNet = IsInNet;
return ImplementFindProxyForURL(url, host);
}
function FindProxyForURLEx(url, host){
pfDnsResolve = DnsResolveEx;
pfMyIpAddress = MyIpAddressEx;
pfIsInNet = IsInNetEx;
return ImplementFindProxyForURL(url, host);
}
function ImplementFindProxyForURL(url, host){
var hash=0, urllower, i, fIp=false, ip, iparray, nocarp=false, skiphost=false;
var list="", pl, j, score, ibest, bestscore;
urllower = url.toLowerCase();
if((urllower.substring(0,5)=="rtsp:") ||
(urllower.substring(0,6)=="rtspt:") ||
(urllower.substring(0,6)=="rtspu:") ||
(urllower.substring(0,4)=="mms:") ||
(urllower.substring(0,5)=="mmst:") ||
(urllower.substring(0,5)=="mmsu:"))
return "DIRECT";
if(UseDirectForLocal){
if(isPlainHostName(host))
fIp = true;}
for(i=0; i<cDirectNames; i++){
if(ExpMatch(host, DirectNames[i])){
fIp = true;
break;}
if(ExpMatch(url, DirectNames[i]))
return "DIRECT";
}
if(cDirectIPs == 0){
if(fIp)
return "DIRECT";}
else{
ip = host;
if(fIp)
ip = pfDnsResolve(host);
iparray = ip.split(";");
for(j=0; j<iparray.length; j++){
if(IsIPv6Addr(iparray[j]))
return "DIRECT";
for(i=0; i<cDirectIPs; i++){
if(pfIsInNet(iparray[j], DirectIPs[i]))
return "DIRECT";}}
if(isPlainHostName(host))
return "DIRECT";
}
if(cCARPExceptions > 0){
for(i = 0; i < cCARPExceptions; i++){
if(ExpMatch(host, CARPExceptions[i])){
nocarp = true;}
if(ExpMatch(url, CARPExceptions[i])){
nocarp = true;
skiphost = true;
break;
}}}
if(!skiphost)
hash = HashString(host,hash);
if(nocarp)
hash = HashString(pfMyIpAddress(), hash);
pl = new Array();
for(i = 0; i<cNodes; i++){
Proxies[i].score = Proxies[i].load * Scramble(hash ^ Proxies[i].hash);
pl[i] = i;
}
for(j = 0; j < cNodes; j++){
bestscore = -1;
for(i = 0; i < cNodes-j; i++){
score = Proxies[pl[i]].score;
if(score > bestscore){
bestscore = score;
ibest = i;
}}
list = list + "PROXY " + Proxies[pl[ibest]].name + ":" + HttpPort + "; ";
pl[ibest] = pl[cNodes-j-1];
}
list = list + BackupRoute;
return list;
}
var h_tbl = new Array(0,0x10D01913,0x21A03226,0x31702B35,0x4340644C,0x53907D5F,0x62E0566A,0x72304F79,0x8680C898,0x96 50D18B,0xA720FABE,0xB7F0E3AD,0xC5C0ACD4,0xD510B5C7,0xE4609EF2,0xF4B087E1);
function HashString(str, h){
for(var i=0; i<str.length; i++){
var c = str.charAt(i);
if(c ==':' || c == '/') break;
c = CharToAscii(c.toLowerCase());
h = (h >>> 4) ^ h_tbl[(h ^ c) & 15];
h = (h >>> 4) ^ h_tbl[(h ^ (c>>>4)) & 15];
h = MakeInt(h);
}
return h;
}
function Scramble(h){
h += ((h & 0xffff) * 0x1965) + ((((h >> 16) & 0xffff) * 0x1965) << 16) + (((h & 0xffff) * 0x6253) << 16);
h = MakeInt(h);
h += (((h & 0x7ff) << 21) | ((h >> 11) & 0x1fffff));
return MakeInt(h);
}
function CharToAscii(c){
return c.charCodeAt(0);
}
function MakeInt(x){
x %= 4294967296;
if(x < 0)
x += 4294967296;
return x;
}
function IsIPv6Addr(ip){
return (ip.indexOf(":") > -1);
}

Как видно из выделенного жирным - тот самый ip адрес, на который ругается TMG при попытке подключиться к сервакам Apple. По большому счету делов-то, как я понимаю - изменить 192.168.5.157 на 192.168.5.10 (адрес TMG).
Правило для входящих/исходящих портов я настроил - инфу брал с сайта apple.

Кто может подсказать, что это за хрень и как с ней бороться? Уже 2 дня бьюсь, isaserver.ru /org шибко дельных советов не дают, темы годовой-двухгодовой данности с нерешенными проблемами...

gfagnum 06-02-2014 10:17 2303845

Проблема решилась после общения с умными людьми, хорошо владеющими английским хДД
А именно, почитав isaserver.org выяснилось, что проблема решается следующим образом:
1. В сетевых подключениях заходим в дополнительно (advanced) - дополнительные настройки (advanced settings) и меняем приоритет с чего-то, на local как указано на скриншоте


2. Далее переходим во вкладочку VPN и конфигурируем статику (если была DHCP)


Помогло, теперь wpad отображается корректно и больше никаких косяков, по крайней мере пока что)

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


Время: 02:43.

Время: 02:43.
© OSzone.net 2001-