Car insurance

Sjálfvirk stilling á netsel-i (proxy)

Ég vinn á vinnustað þar sem eina tengingin út á internetið er í gegnum netsels-/staðgengil- eða proxy þjón og það fer óendanlega í taugarnar á mér að þurfa að vera að afhaka proxy stillingar í hinum og þessum forritum hvort sem það er Internet Explorer í windows eða Safari í makka sem dæmi þegar heim er komið. Þannig að það endaði með því að ég tók mig til og leitaði aðeins á netinu um hvernig hægt væri að nota fídusin er nefnist automatically detect settings í windows og proxy autodiscovery í makka. Lestu meira til að sjá hvernig þetta er leyst…

Athugið að þessi útfærsla gæti virkað mjög vel í skólum, en ég er alltaf að garfa í proxy stillingunum í vélinni hjá konunni minni eftir að hún kemur úr skólanum.


Til að virkja sjálvirka uppgötvun á netselsstillingum þarftu að hafa:

  1. aðgang að vefþjón sem getur hýst nafnið wpad og ef staðarnetið heitir td. megacorp.is þá væri vefslóðin wpad.megacorp.is
  2. javascript skrá sem inniheldur eitt fall sem sér um að fletta upp þeim vélum sem eiga að vera undanskildar því að fara í gegnum netsel (proxy).
  3. kerfisstjórnunarréttindi á vinnustöðinni þinni eða amk. að þeim stillingum sem snúa að því að stilla netsel

Þetta gerist svo í grófum dráttum bak við tjöldin

  1. forritið (vafri sem dæmi) leitar að slóðinni http://wpad , http://wpad.megacorp.is og leitar þar að skrá sem heitir wpad.dat ef skráin finnst er hún notuð til að stilla hvað fer í gegnum netsel og hvað ekki. Ef skráin finnst hinsvegar ekki þá notar forritið engar netsels-stillingar eða beina tengingu við internetið.
  2. Inn í wpad.dat skránni er svo fallið FindProxyForURL(url, host) sem hefur það eina hlutverk að fletta upp hvort nota á netsel eður ei. Innan fallsins er svo hægt að nota uppflettingar eins og hvort vefslóðin sé einfalt vélarnafn isPlainHostName(host), eða að lénsnafn innihaldi tiltekin streng dnsDomainIs(host, „megacorp.is“) og einnig hvort vél tilheyri tilteknu neti isInNet(host, „172.16.0.0″, „255.240.000.000″).

Þegar búið er að koma skránni fyrir á vefmiðlaranum þá er hægt að fara og stilla vinnustöðina þannig að hún noti sjálfvirka uppsetningu á netseli.

  • Í Windows er Netsel (proxy) stillt í Control Panel undir Internet Options eða Internet Explorer > Tools > Internet Options > Connections > Lan Settings… > haka við „Automatically Detect Settings“
  • Í makka er netsel (proxy stillt) í system preferences > network > velja það netkort sem nota á netsel með > ýta á advanced > Proxies > haka við „Auto Proxy Discovery“
  • Í Linux er ég ekki alveg búin að kynna mér stillingarnar nema þá í Firefox, en gildir sama hvort sem þú ert með Windows, Linux eða Makka. Þar er netsel stillt í Advanced > Network > Settings… > velja auto-detect proxy for this network

Hér er svo wpad.dat skráin mín:

// Samúel Jón Gunnarsson - síðast breytt 2010.01.05
// Unnið út frá eftirfarandi skriftu http://nscsysop.hypermart.net/setproxy.html
//Lysing á syntax má finna a sidunni her fyrir nedan:
//http://support.novell.com/techcenter/articles/ana20020402.html
function FindProxyForURL(url, host)
 {
    //Ekki fara med short-hostname i gegnum proxy.
    if (isPlainHostName(host))
    return "DIRECT";
    //Hér koma stillingarnar sem
    //Baetti inn private networks en
    //undir öllu eðlilegu ætti ekki að
    //að vera þörf að senda staðbundnar tölur
    //gegnum proxy.
    // Sjá http://en.wikipedia.org/wiki/Private_networks
    // 10.0.0.0 . 10.255.255.255
    // 172.16.0.0 . 172.31.255.255
    // 192.168.0.0 . 192.168.255.255
    // Einig borgar sig að nota ekki proxy
    // fyrir *.local og localhost (127.0.0.1)
    if (
    dnsDomainIs(host, "stadarnetid_mitt.is") ||
    dnsDomainIs(host, "local") ||
    dnsDomainIs(host, "127.0.0.1") ||
    isInNet(host, "172.16.0.0", "255.240.000.000") ||
    isInNet(host, "10.0.0.0", "255.000.000.000") ||
    isInNet(host, "192.168.0.0", "255.255.000.000")
    )
    return "DIRECT";

    //Þesso færsla kemur i veg fyrir villuskilaboðin "no such host"
    //þegar ekki tekst að fletta ip-tolu upp i dns og skilar þvi
    //beintengingu i stad thess ad fara i gegnum proxy.
    if (!isResolvable(host))
    return "DIRECT";

    //Her er tilgreint hvaða samskiptastaðla
    //proxy medhoandlar.
    if (
    url.substring(0, 5) == "http:" ||
    url.substring(0, 6) == "https:" ||
    url.substring(0, 4) == "ftp:" ||
    url.substring(0, 7) == "gopher:"
    )

    //Hér kemur svo tilvisun á proxy Þjón sem nota skal
    return "PROXY proxy.stadarnetid_mitt.is:8088; DIRECT";

    //Ekki cach-a upp wais: protocol
    if (url.substring(0, 5) == "wais:")
    return "DIRECT";
    else
    return "DIRECT";
}

About Samúel Jón Gunnarsson

Ég er hópstjóri, sambland af rafmagns og tölvutæknifræðing, forritari, linux og unix nörd með eindæmum, bloggari, faðir, eiginmaður, tónlistar- og óbilandi græjukall. Eitt sinn var ég frystitoarasjómaður og gerði við sjónvörp (þó ekki á sama tíma ) :-)

06. janúar 2010 by Samúel Jón Gunnarsson
Categories: Af netinu, Linux / Unix, Makkinn, Stillingar, Stillingar, Stillingar, Windows | Tags: , , , | Leave a comment

Leave a Reply

Required fields are marked *

*