Ένα σενάριο PAC λαμβάνει το όνομα κεντρικού υπολογιστή από το URL. Το dashboard δεν γίνεται αυτόματα dashboard.example.internal πριν από την αντιστοίχιση:

function FindProxyForURL(url, host) {
  if (isPlainHostName(host)) {
    return "DIRECT";
  }
  return "PROXY 203.0.113.10:8080";
}

Χρησιμοποιήστε ένα πραγματικό τελικό σημείο HTTP αντί της διεύθυνσης τεκμηρίωσης· η λίστα διακομιστών μεσολάβησης HTTP προσφέρει υποψηφίους για δοκιμές δημόσιων προορισμών όπου επιτρέπεται αυτή η διαδρομή. Σε αυτό το σενάριο, το σύντομο όνομα επιστρέφει σκόπιμα DIRECT· το πλήρως προσδιορισμένο όνομα φτάνει στον κλάδο του proxy. «Plain hostname» σημαίνει γραφή χωρίς τελεία, όχι διαπίστωση ότι ο host βρίσκεται σε αξιόπιστο τοπικό δίκτυο.

Αν η επιθυμητή πολιτική είναι ένας εσωτερικός τομέας, αντιστοιχίστε αυτόν τον τομέα αντί για κάθε σύντομο όνομα. Τα dnsDomainIs και shExpMatch έχουν διαφορετικές εισόδους και σημασιολογία μοτίβων. Ο έλεγχος κατάληξης για το .example.internal δεν περιλαμβάνει την ακριβή ρίζα example.internal· συμπεριλάβετε ρητά αυτή την περίπτωση όταν το επιθυμείτε. Ένα μοτίβο τύπου shell δεν είναι υποδίκτυο IP ούτε κανονική έκφραση.

Συγκρίνετε το αποτέλεσμα του σεναρίου για το σύντομο όνομα, το πλήρως προσδιορισμένο όνομα, έναν άσχετο δημόσιο host και οποιαδήποτε επιδιωκόμενη ρίζα τομέα. Αυτό ελέγχει την επιλογή κανόνα χωρίς σύνδεση στο proxy. Εξετάστε τον πρώτο κανόνα που επιστρέφει όταν ένας ευρύς κλάδος DIRECT εμποδίζει τη δοκιμή ενός κατά τα άλλα προσβάσιμου τελικού σημείου.

Χρησιμοποιήστε σύγκριση ονομάτων όταν εκφράζει την πολιτική· οι βοηθοί DNS προσθέτουν δικές τους αναζητήσεις και καθυστέρηση. Κρατήστε και την έμμεση τοπική παράκαμψη του προγράμματος περιήγησης ξεχωριστή από το σενάριο. Ένας έλεγχος localhost δεν μπορεί να αντικαταστήσει την πραγματική γραφή του δημόσιου ή εσωτερικού προορισμού.

Σχετικά άρθρα