IE6 behind ISA stops working, automatically changes to port 8083, SSL still works

B

Brian Rogers

Hi everyone,

The crosspost is due to not being able to identify the root cause of this
problem. (IE6 or ISA)

Setup: W2K3 Server, IE6, ISA 2004

My browser stops browsing after a period and I get page not found until my
machine is restarted. When I look at the ISA log, I notice attempts to
communicate using port 8083. Browsing on SSL 447 works without issue. This
problem affects any applications attempting to reach the internet (port 80)
are translated to port 8083.

I was wondering if this is a known issue for IE or ISA. Any ideas on the
issue are appreciated.

Thanks,
B.

More information:
1. All applications trying to connect to the internet are affected e.g.
SharpReader and Firefox
2. SSL communication on port 447 is unaffected.
2. ISA and IE6 are setup for auto-discovery, but the wpad.dat file
definitely only contains 8080 (see below for more information) ISA is setup
for port 8080, with discovery on port 80. I downloaded the wpad.dat file
from both ports and it matches the data below.
3. Changing IE6 to use a specified proxy, and removing the auto-detect takes
away to problem, but does not work for all my situations (e.g. VPN to
another network) and does not work every time.

--------- WPAD contents start

//Copyright (c) 1997 Microsoft Corporation
BackupRoute="DIRECT";
UseDirectForLocal=true;
function MakeIPs(){
}
DirectIPs=new MakeIPs();
cDirectIPs=0;
function MakeNames(){
this[0]="*.mydomain.com";
this[1]="*.mydomain.com";
}
DirectNames=new MakeNames();
cDirectNames=2;
HttpPort="8080";
cNodes=1;
function MakeProxies(){
this[0]=new Node("myisaserver.mydomain.com",0,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 FindProxyForURL(url, host){
var urlhash, urllower, ibest, bestscore, list, i, j, port=HttpPort;
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 && isPlainHostName(host))
return "DIRECT";
if (cDirectNames > 0)
for (i = 0; i < cDirectNames; i++)
if (shExpMatch(host, DirectNames))
return "DIRECT";
if (cDirectIPs > 0)
for (i = 0; i < cDirectIPs; i += 2)
if (isInNet(host, DirectIPs, DirectIPs[i+1]))
return "DIRECT";
urlhash = HashString(url);
for (i = 0; i < cNodes; i++)
Proxies.score = Proxies.load * Scramble(MakeInt(urlhash ^
Proxies.hash));
list = "";
for (j = 0; j < cNodes; j++) {
for (bestscore = -1, i = 0; i < cNodes; i++) {
if (Proxies.score > bestscore) {
bestscore = Proxies.score;
ibest = i;
}
}
Proxies[ibest].score = -1;
list = list + "PROXY " + Proxies[ibest].name + ":" + port + "; ";
}
list = list + BackupRoute;
return list;
}
function HashString(url){
var h = 0;
var slashes = 0;
for (var i = 0; i < url.length; i++) {
var c = url.charAt(i);
if (c == '/')
slashes++;
if (slashes < 3)
c = c.toLowerCase();
h += (((h & 0x1fff) << 19) | ((h >> 13) & 0x7ffff)) + CharToAscii(c);
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);
}
var Chars ="
!\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~????????????Z????????????z?
¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþ
";
function CharToAscii(c){
return Chars.indexOf(c) + 32;
}
function MakeInt(x){
if (x < 0) {
return x + 4294967296;
} else if (x >= 4294967296) {
return x - 4294967296;
}
return x;
}
------- WPAD contents end
 
G

Guest

Hi

Check the domain group policy for client IE setup, might be there is a wrong
policy.

Brian Rogers said:
Hi everyone,

The crosspost is due to not being able to identify the root cause of this
problem. (IE6 or ISA)

Setup: W2K3 Server, IE6, ISA 2004

My browser stops browsing after a period and I get page not found until my
machine is restarted. When I look at the ISA log, I notice attempts to
communicate using port 8083. Browsing on SSL 447 works without issue. This
problem affects any applications attempting to reach the internet (port 80)
are translated to port 8083.

I was wondering if this is a known issue for IE or ISA. Any ideas on the
issue are appreciated.

Thanks,
B.

More information:
1. All applications trying to connect to the internet are affected e.g.
SharpReader and Firefox
2. SSL communication on port 447 is unaffected.
2. ISA and IE6 are setup for auto-discovery, but the wpad.dat file
definitely only contains 8080 (see below for more information) ISA is setup
for port 8080, with discovery on port 80. I downloaded the wpad.dat file
from both ports and it matches the data below.
3. Changing IE6 to use a specified proxy, and removing the auto-detect takes
away to problem, but does not work for all my situations (e.g. VPN to
another network) and does not work every time.

--------- WPAD contents start

//Copyright (c) 1997 Microsoft Corporation
BackupRoute="DIRECT";
UseDirectForLocal=true;
function MakeIPs(){
}
DirectIPs=new MakeIPs();
cDirectIPs=0;
function MakeNames(){
this[0]="*.mydomain.com";
this[1]="*.mydomain.com";
}
DirectNames=new MakeNames();
cDirectNames=2;
HttpPort="8080";
cNodes=1;
function MakeProxies(){
this[0]=new Node("myisaserver.mydomain.com",0,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 FindProxyForURL(url, host){
var urlhash, urllower, ibest, bestscore, list, i, j, port=HttpPort;
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 && isPlainHostName(host))
return "DIRECT";
if (cDirectNames > 0)
for (i = 0; i < cDirectNames; i++)
if (shExpMatch(host, DirectNames))
return "DIRECT";
if (cDirectIPs > 0)
for (i = 0; i < cDirectIPs; i += 2)
if (isInNet(host, DirectIPs, DirectIPs[i+1]))
return "DIRECT";
urlhash = HashString(url);
for (i = 0; i < cNodes; i++)
Proxies.score = Proxies.load * Scramble(MakeInt(urlhash ^
Proxies.hash));
list = "";
for (j = 0; j < cNodes; j++) {
for (bestscore = -1, i = 0; i < cNodes; i++) {
if (Proxies.score > bestscore) {
bestscore = Proxies.score;
ibest = i;
}
}
Proxies[ibest].score = -1;
list = list + "PROXY " + Proxies[ibest].name + ":" + port + "; ";
}
list = list + BackupRoute;
return list;
}
function HashString(url){
var h = 0;
var slashes = 0;
for (var i = 0; i < url.length; i++) {
var c = url.charAt(i);
if (c == '/')
slashes++;
if (slashes < 3)
c = c.toLowerCase();
h += (((h & 0x1fff) << 19) | ((h >> 13) & 0x7ffff)) + CharToAscii(c);
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);
}
var Chars ="
!\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~?Â???????????ÂZÂÂ????????????Âz?
¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÃÂÃÄÅÆÇÈÉÊËÌÃÃŽÃÃÑÒÓÔÕÖ×ØÙÚÛÜÃÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþ
";
function CharToAscii(c){
return Chars.indexOf(c) + 32;
}
function MakeInt(x){
if (x < 0) {
return x + 4294967296;
} else if (x >= 4294967296) {
return x - 4294967296;
}
return x;
}
------- WPAD contents end
 
B

Brian Rogers

Hi e_zverev

Excellent idea, but no luck. I checked the policy for the machine (machine
is in workgroup, not domain) and there are no settings for a proxy on 8083.
I also searched the registry for 8083 - nothing.

Thanks,
B.

e_zverev said:
Hi

Check the domain group policy for client IE setup, might be there is a
wrong
policy.

Brian Rogers said:
Hi everyone,

The crosspost is due to not being able to identify the root cause of this
problem. (IE6 or ISA)

Setup: W2K3 Server, IE6, ISA 2004

My browser stops browsing after a period and I get page not found until
my
machine is restarted. When I look at the ISA log, I notice attempts to
communicate using port 8083. Browsing on SSL 447 works without issue.
This
problem affects any applications attempting to reach the internet (port
80)
are translated to port 8083.

I was wondering if this is a known issue for IE or ISA. Any ideas on the
issue are appreciated.

Thanks,
B.

More information:
1. All applications trying to connect to the internet are affected e.g.
SharpReader and Firefox
2. SSL communication on port 447 is unaffected.
2. ISA and IE6 are setup for auto-discovery, but the wpad.dat file
definitely only contains 8080 (see below for more information) ISA is
setup
for port 8080, with discovery on port 80. I downloaded the wpad.dat file
from both ports and it matches the data below.
3. Changing IE6 to use a specified proxy, and removing the auto-detect
takes
away to problem, but does not work for all my situations (e.g. VPN to
another network) and does not work every time.

--------- WPAD contents start

//Copyright (c) 1997 Microsoft Corporation
BackupRoute="DIRECT";
UseDirectForLocal=true;
function MakeIPs(){
}
DirectIPs=new MakeIPs();
cDirectIPs=0;
function MakeNames(){
this[0]="*.mydomain.com";
this[1]="*.mydomain.com";
}
DirectNames=new MakeNames();
cDirectNames=2;
HttpPort="8080";
cNodes=1;
function MakeProxies(){
this[0]=new Node("myisaserver.mydomain.com",0,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 FindProxyForURL(url, host){
var urlhash, urllower, ibest, bestscore, list, i, j, port=HttpPort;
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 && isPlainHostName(host))
return "DIRECT";
if (cDirectNames > 0)
for (i = 0; i < cDirectNames; i++)
if (shExpMatch(host, DirectNames))
return "DIRECT";
if (cDirectIPs > 0)
for (i = 0; i < cDirectIPs; i += 2)
if (isInNet(host, DirectIPs, DirectIPs[i+1]))
return "DIRECT";
urlhash = HashString(url);
for (i = 0; i < cNodes; i++)
Proxies.score = Proxies.load * Scramble(MakeInt(urlhash ^
Proxies.hash));
list = "";
for (j = 0; j < cNodes; j++) {
for (bestscore = -1, i = 0; i < cNodes; i++) {
if (Proxies.score > bestscore) {
bestscore = Proxies.score;
ibest = i;
}
}
Proxies[ibest].score = -1;
list = list + "PROXY " + Proxies[ibest].name + ":" + port + "; ";
}
list = list + BackupRoute;
return list;
}
function HashString(url){
var h = 0;
var slashes = 0;
for (var i = 0; i < url.length; i++) {
var c = url.charAt(i);
if (c == '/')
slashes++;
if (slashes < 3)
c = c.toLowerCase();
h += (((h & 0x1fff) << 19) | ((h >> 13) & 0x7ffff)) + CharToAscii(c);
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);
}
var Chars ="
!\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~????????????Z????????????z?
¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþ
";
function CharToAscii(c){
return Chars.indexOf(c) + 32;
}
function MakeInt(x){
if (x < 0) {
return x + 4294967296;
} else if (x >= 4294967296) {
return x - 4294967296;
}
return x;
}
------- WPAD contents end
 
Top