המלצה לראוטר תומך 2 WAN עם LOAD BALANCING

פורום רשתות, IT ומחשוב כללי - רשתות, ראוטרים, מחשבים ניידים, אביזרים וכו'.
sys_admin
חבר מביא חבר
חבר מביא חבר
הודעות: 3685
הצטרף: ינואר 2014
מיקום: גליל מערבי
נתן תודות: 9 פעמים
קיבל תודות: 718 פעמים

נושא שלא נקרא #31 

integral כתב:@sys_admin

מה אתה מציע?
·
...
·

מה שאני מציע זה דבר ראשון להעביר את הציוד קצה של הספק תשתית למצב של BRIDGE ודבר שני להשתמש במכשיר שתומך כמו שצריך ב LOAD BALANCING ורמז דק, כל הסדרה של ER היא לא תומכת בכך בצורה תקינה, בנוסף לשאר הצרות שיש בסבוניות אלה. בקשר לנושא של sticky sessions שלא ממומש בצורה תקינה בציוד זה כבר כתבתי ויש עוד מספר רב של בעיות מהותיות עם תוכנה של קו ציוד זה, שבמשך שנים הסברתי אותן בפורום זה.

הציוד שכן יכול להיות מתאים, לזה יכולות להיות מספר אפשרויות, מציוד ביתי הכי פשוט וזול שתומך ב OpenWRT , למשל אפילו C7 של TP-LINK ועד מערכת יותר גמישה עם ביצועים אחרים לגמרי, כמו pFsense או כמו OPNsense, שניתן להתקין אותן על כל פלטפורמה X64 , גם פיזית וגם וירטואלית. יש לי מערכות כאלה שפרוסות על פלטפורמות החל ממערכות משובצות סיניות ועד למכונות וירטואליות בתוך שרתי ESXI ו Hyper-V .

אם רוצים לנסות את OpenWRT, אז יש את ההסבר של מנגנון שלו:
https://openwrt.org/docs/guide-user/net ... iwan/mwan3

ואם את pFsense, אז גם בקשר עליו יש תיעוד מלא שלו והוא גם נותן מגוון רב של אפשרויות מתקדמות לרשת ביתית, מאפשרות של הקמה של שרת OpenVPN , שניתן יהיה דרכו לגשת לרשת ביתית מכל מקום ועד למנגנוני אבטחה מתקדמים לרשת ביתית. וכמובן גם הכל על מערכת שמתעדכנת בצורה רציפה ועם כל המודולי תוכנה הכי חדשים ועם אפשרות של שליטה מלאה, גמישות מירבית וניהול שלגיבויים וגרסאות כקבצי תצורה XML ועד לביצוע של SNAPSHOTS מלאים.

כמובן שכל הדברים אלה דורשים הכרת המחשב מקדימה.

integral (פותח השרשור)
חבר שלא מהעולם הזה
חבר שלא מהעולם הזה
הודעות: 7900
הצטרף: דצמבר 2005
נתן תודות: 312 פעמים
קיבל תודות: 543 פעמים

נושא שלא נקרא #32 

@sys_admin
·
אני רואה את מה שאתה אומר, כי מהוידיאו שעברתי עליו בחופזה צריך לעשות כל מיני קומבינות כדי לעבוד כמו שצריך עם PPPOE כפול וזה חבל.

אבל, כרגע עם היישומים פה בבית נראה שעובד טוב ולכן עד שלא תהיינה בעיות מהותיות כנראה שאשאר ככה אלא אם כן יהיה לי זמן להתעמק או למישהו יש פתרון פשוט יותר. נראה לי שגם הפתרון של PFSENSE דורש התעמקות. מההמעט שראיתי, לא ראיתי שם בכלל ויזרדס.

ag43
חבר ותיק
חבר ותיק
הודעות: 2224
הצטרף: אוגוסט 2008
נתן תודות: 49 פעמים
קיבל תודות: 206 פעמים

נושא שלא נקרא #33 

ממליץ בחום על PFSENSE. יש לי שקט ב2 רשתות נפרדות עם מאות משתמשים מאז שהתקנתי אותה (X2).
הסתדרתי איתה בקלות (מלבד הFW שקצת עיצבן בהתחלה).
נתתי להן מכונה וירטואלית עם 2 מעבדי XEON ו8 גיגה זכרון בהתחלה. הנצילות שלהן היתה 5% במקסימום ובד"כ 1-2%. קלילה מאוד.

Lyonia
סמל אישי של משתמש
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 593
הצטרף: ינואר 2011
מיקום: מרכז הארץ, בקעת אונו
נתן תודות: 19 פעמים
קיבל תודות: 51 פעמים

נושא שלא נקרא #34 

ag43 כתב:נתתי להן מכונה וירטואלית עם 2 מעבדי XEON ו8 גיגה זכרון בהתחלה. הנצילות שלהן היתה 5% במקסימום ובד"כ 1-2%. קלילה מאוד.
...
האם הכל זה רק לנתב??? אולי לא מספיק וצריך יותר כוח איבוד :lol:
·

eran405
אחראי תחום רשתות
אחראי תחום רשתות
הודעות: 3388
הצטרף: פברואר 2012
נתן תודות: 380 פעמים
קיבל תודות: 790 פעמים

נושא שלא נקרא #35 

integral כתב: מה שהיה קורה זה כשהייתי מנתק כבל לבדוק במצב ברידג', זה לא היה חוזר, או שהיה חוזר רק לאחת מיציאות הסוויטש ומשגע את הקליינטים. יכול להיות שבגלל שהויזרד בברירת המחדל לא נותן IP ל eth0+1 או בגלל שאין לי IP קבוע מהספקים או בגלל הגדרות DNS או בגלל שהויזרד קושר את ה eth ולא את ה PPPOE . אין לי מושג ומאמין שאפשר לפתור זאת עם הגדרות נכונות יותר. אבל, אני צריך גם לעבוד אז עברתי ל DOUBLE NAT.
...
הרבה מילים אבל ללא פרטים טכניים רלוונטים ולכן קשה להבין מה בדיוק עשית ומה קורה שאתה מנתק את הכבל. חשוד לי החלק "הויזרד קושר את ה eth ולא את ה PPPOE", כי למיטב הבנתי אתה אמור להגדיר דרך ההויזרד את חיבורי ה-pppoe ולכן הוא כן אמור לקשור אותם, אחרת זה נשמע לי כמו bug. בלי לראות קונפיגורציה קשה להגיד. אם משום מה לא הגדרת את ה-pppoe דרך ה-wizard אלא רק אחר כך אולי שווה לנסות להפעיל את ה-wizard שוב ולהגדיר את ה-pppoe דרך ה-wizard.

שם לב שב-edgerouter מאד קל לגבות את הקונפיגורציה שעובדת לך ובמידת הצורך לשחזר. אני מכיר שתי דרכים לעשות זאת:

א. מה-GUI לבחור backup/restore config, שעושה גיבוי יותר מלא הכולל את ה-config.boot וגם עוד קבצים, אבל זה מאד נדיר ורק לדברים מתקדמים שתעשה שינויים מחוץ ל-config.boot. בשביל להגיע לקובץ config.boot צריך לפתוח את ה-.tar.gz.

ב. דרך ה-CLI בעזרת "show configuration", אפשר להוסיף "cat |" בסוף השורה אם אתה רוצה את כל הפלט (לדוגמא בשביל לעשות copy paste לכל הקונפיגוצורה, או אפשר להשתמש ב-scp או ישירות על ה-config.boot או לשמור את הפלט של show configuration לקובץ זמני). ה-show configuration טוב בשביל לשתף את הקונפיגורציה בפורמים כי הוא כבר עושה sanitization לדברים הכי בסיסיים (סיסמאות וכו'; עדיין נדרש עוד מעבר לוודא שאין עוד לדברים לצנזר). בנוסף לי זה הפורמט הכי נח לשמור את הקונפיגורציות השונות שלי ולעשות diff גרפי בשביל להבין מה שיניתי ביניהן. שווה להזכיר גם את אופציית ה-"show configuration commands" שמוציאה פקודות שאפשר להדביק ב-CLI בשביל לשחזר את החלק הזה של הקונפיגורציה.

ספציפית לגבי הסרטון ב-youtube, זה סרטון טוב ומקצועי רק צריך לקחת בחשבון שהוא כבר די מיושן ויתכנו שינויים בגירסאות עדכניות.

לגבי זה שה-failover לא עובד, יש לך שאלה מוגדרת היטב אז הכי טוב להצטרף לפורמים שלהם (שקישרתי קודם) ולשאול שם. מה שכן אין טעם לשאול כמו שאתה הצגת את השאלה כאן. צריך לשתף פרטים טכניים רלוונטים: לכל הפחות את הקונפיגורציה המלאה של הראוטר (אחרי sanitization כמובן) ופירוט טכני על מה קורה כשאתה מנתק את הכבל, כגון הפלט של "show load-balancing status" ו-"show ip route" וכו'. ככל שתשתף יותר פרטים רלוונטים גדל הסיכוי שירצו ויצליחו לעזור לך.

אם תשתף פה את הפרטים הטכניים כגון אלה שפירטתי לעיל, אנסה להעיף מבט ולהגיד אם משהו קופץ לי (כאמור אין לי ניסיון עם load balancing על edgerouter ולכן אני ממליץ יותר על הפורמים שלהם).

לבסוף, לגבי הנושא שה"הויזרד בברירת המחדל לא נותן IP ל eth0+1", זה לפחות משהו שיש לי ניסיון אישי איתו (לא ב-dual WAN אבל בחיבור הבודד כן). אם אני זוכר נכון זה תקין ומקובל בשביל חיבור pppoe שאינו דורש חיבור ברמת ה-IP אל המודם. עדיין אולי תרצה להגדיר IP בשביל שתוכל להגיע בנוחות לממשק ניהול של כל אחד מהמודמים, הקונפיגורציה לצורך כזה אמורה להיראות משהו כמו:

interfaces {
ethernet eth0 {
address 192.168.5.5/24
description "Internet (PPPoE)"
duplex auto
pppoe 0 {
...

service {
nat {
rule 5011 {
description Modem
destination {
address 192.168.5.0/24
}
log disable
outbound-interface eth0
protocol all
type masquerade
}


בהנחה שיש לך שני מודמים עם חיבור של pppoe, תצטרך לשכפל כל אחת מההגדרות בשביל eth0 ו-eth1 וכמובן להחליף את 192.168.5 ל-subnet המתאים של אותו המודם (עדיף שלכל מודם יהיה subnet משלו, על אף שאני די בטוח שאם עוד קצת קונפיגורציה אפשר גם לגרום לזה לעבוד אם לשני המודמים יש את אותו ה-subnet). כל זאת נדרש רק במידה שאתה מגדיר את המודם/ראוטרים במצב bridge, במצב של double NAT אתה אמור להיות מסוגל להכנס לממשק ניהול של המודם/ראוטרים ללא הגדרות מיוחדות (בהנחה שיש להם subnetים שונים, דבר שאתה חייב גם בשביל פעילות תקינה במקרה של double NAT).

עריכה: למען השלמות אציין שכדאי בנוסף להגדיר חסימה ב-firewall לחיבורים נכנסים מה-subnetting הנ"ל שמשתמשים רק בשביל להגיע לממשק הניהול, ובאופן כללי לחסום תקשורת כלשהי מ-subnetting פרטיים לא מוכרים כולל מחיבור האינטרנט.
נערך לאחרונה על ידי eran405 ב 17/09/2020 18:13, נערך פעם 1 בסך הכל.

integral (פותח השרשור)
חבר שלא מהעולם הזה
חבר שלא מהעולם הזה
הודעות: 7900
הצטרף: דצמבר 2005
נתן תודות: 312 פעמים
קיבל תודות: 543 פעמים

נושא שלא נקרא #36 

@eran405

תודה רבה!

נראה לי שבהזדמנות הראשונה אבדוק שוב את מצב ה PPPOE הכפול מאפס בתצורת BRIDGE.
·

integral (פותח השרשור)
חבר שלא מהעולם הזה
חבר שלא מהעולם הזה
הודעות: 7900
הצטרף: דצמבר 2005
נתן תודות: 312 פעמים
קיבל תודות: 543 פעמים

נושא שלא נקרא #37 

@eran405

ניסיתי שוב ושוב לא ממש עובד על PPP0E. מפעיל בעיקר אחד מהם. אולי זה עניין של MTU?

זו הקונפיגורציה:

[left]
ubnt@ubnt:~$ show configuration |cat
firewall {
all-ping enable
broadcast-ping disable
group {
network-group PRIVATE_NETS {
network 192.168.0.0/16
network 172.16.0.0/12
network 10.0.0.0/8
}
}
ipv6-receive-redirects disable
ipv6-src-route disable
ip-src-route disable
log-martians disable
modify balance {
rule 10 {
action modify
description "do NOT load balance lan to lan"
destination {
group {
network-group PRIVATE_NETS
}
}
modify {
table main
}
}
rule 20 {
action modify
description "do NOT load balance destination public address"
destination {
group {
address-group ADDRv4_pppoe0
}
}
modify {
table main
}
}
rule 30 {
action modify
description "do NOT load balance destination public address"
destination {
group {
address-group ADDRv4_pppoe1
}
}
modify {
table main
}
}
rule 70 {
action modify
modify {
lb-group G
}
}
}
name WAN_IN {
default-action drop
description "WAN to internal"
rule 10 {
action accept
description "Allow established/related"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
}
name WAN_LOCAL {
default-action drop
description "WAN to router"
rule 10 {
action accept
description "Allow established/related"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
}
options {
mss-clamp {
mss 1412
}
}
receive-redirects disable
send-redirects enable
source-validation disable
syn-cookies enable
}
interfaces {
ethernet eth0 {
description WAN
duplex auto
pppoe 0 {
default-route auto
firewall {
in {
name WAN_IN
}
local {
name WAN_LOCAL
}
}
mtu 1492
name-server auto
password ****************
user-id XXXXXXXXXXX
}
speed auto
}
ethernet eth1 {
description "WAN 2"
duplex auto
pppoe 1 {
default-route auto
firewall {
in {
name WAN_IN
}
local {
name WAN_LOCAL
}
}
mtu 1492
name-server auto
password ****************
user-id XXXXXXXXX
}
speed auto
}
ethernet eth2 {
duplex auto
speed auto
}
ethernet eth3 {
duplex auto
speed auto
}
ethernet eth4 {
duplex auto
speed auto
}
loopback lo {
}
switch switch0 {
address 192.168.1.1/24
description Local
firewall {
in {
modify balance
}
}
switch-port {
interface eth2 {
}
interface eth3 {
}
interface eth4 {
}
}
}
}
load-balance {
group G {
interface pppoe0 {
}
interface pppoe1 {
}
}
}
service {
dhcp-server {
disabled false
hostfile-update disable
shared-network-name LAN {
authoritative enable
subnet 192.168.1.0/24 {
default-router 192.168.1.1
dns-server 192.168.1.1
lease 86400
start 192.168.1.38 {
stop 192.168.1.243
}
}
}
}
dns {
forwarding {
cache-size 150
listen-on switch0
}
}
gui {
https-port 443
}
nat {
rule 5000 {
description "masquerade for WAN"
outbound-interface pppoe0
type masquerade
}
rule 5002 {
description "masquerade for WAN 2"
outbound-interface pppoe1
type masquerade
}
}
ssh {
port 22
protocol-version v2
}
}
system {
conntrack {
expect-table-size 4096
hash-size 4096
table-size 32768
tcp {
half-open-connections 512
loose enable
max-retrans 3
}
}
host-name ubnt
login {
user ubnt {
authentication {
encrypted-password ****************
}
level admin
}
}
ntp {
server 0.ubnt.pool.ntp.org {
}
server 1.ubnt.pool.ntp.org {
}
server 2.ubnt.pool.ntp.org {
}
server 3.ubnt.pool.ntp.org {
}
}
syslog {
global {
facility all {
level notice
}
facility protocols {
level debug
}
}
}
time-zone UTC
}
ubnt@ubnt:~$ H

[/left]

sys_admin
חבר מביא חבר
חבר מביא חבר
הודעות: 3685
הצטרף: ינואר 2014
מיקום: גליל מערבי
נתן תודות: 9 פעמים
קיבל תודות: 718 פעמים

נושא שלא נקרא #38 

eran405 כתב:
...
...
לבסוף, לגבי הנושא שה"הויזרד בברירת המחדל לא נותן IP ל eth0+1", זה לפחות משהו שיש לי ניסיון אישי איתו (לא ב-dual WAN אבל בחיבור הבודד כן). אם אני זוכר נכון זה תקין ומקובל בשביל חיבור pppoe שאינו דורש חיבור ברמת ה-IP אל המודם. עדיין אולי תרצה להגדיר IP בשביל שתוכל להגיע בנוחות לממשק ניהול של כל אחד מהמודמים, הקונפיגורציה לצורך כזה אמורה להיראות משהו כמו:

interfaces {
ethernet eth0 {
address 192.168.5.5/24
description "Internet (PPPoE)"
duplex auto
pppoe 0 {
...

service {
nat {
rule 5011 {
description Modem
destination {
address 192.168.5.0/24
}
log disable
outbound-interface eth0
protocol all
type masquerade
}


·
...
·

אם הוא יעשה שבקונפיגורציה יראה "משהו כזה", כפי שרשמת אותה מעל, אז לא יהיה לו אפילו גישה לאינטרנט, וזה מסיבה פשוטה ביותר, שבתצורה זו הממשק חוץ שמופעל לצורך מנגנון NAT הוא ממשק רשת פיזי ( eth0 ) שאין עליו כתובת חיצונית של הספק והממשק שבכלל יכול לקבל את הכתבות של ספק במקרה של חיבור PPPoE , הוא מן הסתם ממשק pppoe 0, שכל מה שנשאר ממנו בקונפיגורצייה זו, זה רק שלוש נקודות.
זו הסיבה שהשירות NAT שבמקרה זה ממומש על ידי מנגנון masquerading של iptables צריך להיראות כך לשמל:

קוד: בחירת הכל

service {

nat {
 rule 5010 {
 log disable
 outbound-interface pppoe0
 protocol all
 type masquerade
    }
  }

}

eran405
אחראי תחום רשתות
אחראי תחום רשתות
הודעות: 3388
הצטרף: פברואר 2012
נתן תודות: 380 פעמים
קיבל תודות: 790 פעמים

נושא שלא נקרא #39 

@sys_admin
·

זהו קוד בדוק שעבד לי בתצורה של edgerouter מחובר למודם בתשתית בזק עם חייגן pppoe, אז לכל הפחות החלק של "לא יהיה לו אפילו גישה לאינטרנט" לא נכון. חשוב להבין שזה החלק המינימלי שנדרש להוסיף בשביל לאפשר גישה לממשקי ניהול של המודמים ולכן החוק masquerade הוא בנוסף לחוק masquerade הרגיל שמופיע כרגיל תחת rule 5010 וכנראה נראה בדיוק כמו שהבאת בדוגמא שלך (אכן כוונתי הייתה שיבינו מהשלוש נקודות שכל זאת בנוסף לכל הקונפיגורציה הרגילה). שם לב שהחוק החדש מוסיף את 5011 rule (חשוב לבחור מספר פנוי ולא לדרוס חוק קיים) והוא תופס רק לגבי התקשורת ל-subnet הרלוונטי. בנוסף ערכתי את ההודעה הקודמת והוספתי שכדאי גם להוסיף חוקי firewall בשביל הממשקי "הניהול" האילו ולחסום תקשורת נכנסת.

eran405
אחראי תחום רשתות
אחראי תחום רשתות
הודעות: 3388
הצטרף: פברואר 2012
נתן תודות: 380 פעמים
קיבל תודות: 790 פעמים

נושא שלא נקרא #40 

@integral
·

א. רחמים, בבקשה תשתמש בבלוק Code כאשר אתה מדביק דברים כאלה כאן בפורמים (מופיע בעורך הרגיל), או אפילו יותר טוב בשביל פלט כזה ארוך, תקשר לאתר חיצוני כגון:
https://pastebin.com/2yuPr5wj

ב. אני לא רואה שום דבר שזועק לי בקונפיגורציה לעיל, ההגדרות של ה-load balancing נראות אחד לאחד בדיוק מה שמוסבר בהסבר שלהם (כאשר כמובן ממשקי ה-pppoe משוייכים ל-load balancing ולא הממשקים הפיזים):
https://help.ui.com/hc/en-us/articles/2 ... alancing#3

ג. משהו שכן שונה ממה שדיברת קודם, אתה עושה balancing מלא בין הממשקים ולא רק failover. בשביל failover בלבד אתה צריך להוסיף:

קוד: בחירת הכל

set load-balance group G interface pppoe1 failover-only

(במקרה הזה ישתמשו ב-pppoe1 רק כאשר pppoe0 יפול)
למיטב הבנתי, הקטע של failover עובד גם במקרה של balancing מלא אבל אז כדאי להגדיר הגדרות נוספות בשביל המקרה התקין שהוא מאזן בין החיבורים כגון ה-Sticky כפי שמוסבר בלינק לעיל.

ד. ספציפית לגבי ה-MTU זה נראה בדיוק כמו ההגדרות שעבדו לי בזמנו מעל תשתית בזק וחייגן pppoe. עדיין כדאי לבדוק את הנושא לדוגמא כמו שמוסבר כאן:
https://kb.netgear.com/19863/Ping-Test- ... -on-Router
אין קשר ישיר ל-load balancing חוץ מאשר זה שליתר ביטחון הייתי בודק את ה-MTU מעל כל חיבור בנפרד. דרך אגב אני לא בטוח למה מוגדר mss clamping של 1412. אני מנחש שזה הברירת מחדל שלו, כי זה גם מה שאני רואה שהוגדר בקונפיגורציה שלי בזמנו. עכשיו שאני מסתכל על זה אני מנחש שאפשר להעלות את זה ל-1452 כמו שמוסבר פה:
https://community.ui.com/questions/Mss- ... 8eef8fe2d0


בשורה התחתונה עדיין לא סיפקת מידע רלוונטי למה קורה כאשר אתה מנתק את הכבל, ועכשיו גם לא ברור לי האם זה עובד תקין לפני שאתה מנתק את הכבל ואם לא מה בדיוק הבעיה.

תסביר בדיוק איזה בעיה/בעיות יש כולל פרטים טכניים שיכולים להעיד איפה הבעיה (לדוגמא מתי בדיקת פינג ל-8.8.8.8 עובדת ומתי היא לא? האם יש גם חוסר יציבות או תופעות כאלה; יתכן שאפשר להשתמש בטרייס לראות את הניתוב לחיבורים השונים וכו'). האם יש שורות רלוונטיות ב-log שלו, הכי טוב להפעיל "show log tail" מה-CLI ולהשאיר פועל ואז לנתק את הכבל ולעקוב האם מופיעות הודעות חדשות בחלון של ה-CLI.

בנוסף כמו שביקשתי קודם לפחות תבדוק ותשתף את הפלט של הפקודות שמופיעות תחת troubleshooting בהסבר שלהם:
https://help.ui.com/hc/en-us/articles/2 ... alancing#5
האם יש הבדל בין המקרה התקין כשהכבל מחובר לכאשר אתר מנתק את הכבל? האם הוא מצליח להבין שהחיבור נפל? אולי לוקח לו קצת זמן, האם יש שינוי בפלט של הפקודות הנ"ל לדוגמא 2 דקות אחרי שניתקת את החיבור? שם לב שבלינק לעיל מפורט גם לגבי אופציית ה-Route Test שיתקן שנדרשת בשביל שה-edgerouter יבין שהממשק נפל (כאמור אין לי ניסיון עם load balancing אז אני לא יכול להגיד דברים בוודאות).

integral (פותח השרשור)
חבר שלא מהעולם הזה
חבר שלא מהעולם הזה
הודעות: 7900
הצטרף: דצמבר 2005
נתן תודות: 312 פעמים
קיבל תודות: 543 פעמים

נושא שלא נקרא #41 

@eran405
·
תודה רבה! לצערי אין לי את הזמן כרגע להיכנס לעומק, למרות שכשיהיה לי אשמח.

מהסיבה דלעיל כרגע חזרתי ל double nat.

מה אני צריך לעשות כדי לוודא שאכן שני הראוטרים של התשתית (D225 ו TPLINK 9970) וה ER-X יושבים על סאבנטים שונים? לא בטוח שהבנתי את עניין הסאבנטים.

הסיבה העיקרית לשני הקווים היא ה FAIL אבל זה גם מוריד את הלחץ בבית שזה לא פחות חשוב ולכן הגדרתי LOAD BALANCING כדי לנצל את רוחב הפס של שני הקווים בתוספת של QOS פשוט. כמובן שאני מצפה ל FAIL גם.

מה היתרון של ה STICKY? איזה אופציה כדאי לבחור?

לגבי השאר, אתייחס כשאוכל.

eran405
אחראי תחום רשתות
אחראי תחום רשתות
הודעות: 3388
הצטרף: פברואר 2012
נתן תודות: 380 פעמים
קיבל תודות: 790 פעמים

נושא שלא נקרא #42 

אענה בנפרד לשתי השאלות שלך:
integral כתב: מה אני צריך לעשות כדי לוודא שאכן שני הראוטרים של התשתית (D225 ו TPLINK 9970) וה ER-X יושבים על סאבנטים שונים? לא בטוח שהבנתי את עניין הסאבנטים.
...
דבר ראשון אני ממליץ לך בחום להשלים את הרקע הבסיסי לגבי מה זה subnetים ואיך עובד ניתוב עם כתובת IP (ברמה בסיסית). מחיפוש זריז בגוגל הנה משהו להתחיל ממנו ואתה יכול להמשיך ולהתעמק פחות או יותר בכל נושא ברשתות וכמה שתבחר דרך האינטרנט:


ספציפית לגבי subnetים, השלוש מספרים הראשונים בכתובת IP הם הכתובת של הרשת המקומית, מה שנקרא גם subnet (הרשת זה נגיד כל האינטרנט ו-192.168.1.0 זה התת רשת או ה-subnet של הרשת הביתית שלך). אם רוצים לדייק זה תלוי ב-subnet mask שכרגיל יהיה 255.255.255.0 שפירושו בדיוק שהשלוש מספרים הראשונים הם הכתובת של התת רשת והמספר הרביעי מזהה את התחנה בתוך ה-subnet. בעזרת CIDR אפשר לכתוב שהכתובת של הראוטר היא: 192.168.1.1/24 . כאשר ה-24/ בסוף פירושו שוב בדיוק מה שכתבתי לעיל (השלוש מספרים הראשונים הם ה-subnet והמספר הרביעי זה הכתובת בתוך ה-subnet).

אני לא מבין איך זה יכול לעבוד לך אם יש התנגשות ב-subnetים, ולכן לדעתי כבר עכשיו יש לך subnetים שונים בין הראוטרים. בכל זאת אפרט איך אני הייתי מגדיר זאת:

1. אני ממליץ לשנות את ה-subnet של הרשת הראשית (זאת שה-ER-X מנהל), מ-192.168.1.0/24 שזה הברירת מחדל של פחות או יותר כל ראוטר ומגדיל את הסיכוי להתנשות עם הטווח של ציוד אחר. אתה יכול לדוגמא להשתמש ב-192.168.7.0/24 או כל subnet מהטווחים ששמורים לרשתות פרטיות:
https://en.wikipedia.org/wiki/Private_n ... _addresses
בשביל הנוחיות, תבחר subnet שגם שונה מהכתובת שיש כרגע לכל אחד מהמודם/ראוטרים שלך. שם לב שגם אם הטווח השמור הוא גדול יותר, כמו לדוגמא 192.168.0.0/16, אפשר ומומלץ להצמד ל-subnetים של 24/ כמו לדוגמא 192.168.7.0/24.

בשביל לשנות זאת כעת (בלי להריץ מחדש ה-wizard ולאפס את כל ההגדרות), אתה צריך לעדכן את הכתובת החדשה בשני מקומות (אני ממליץ לפי הסדר שאציין):

א. תחת services -> DHCP Server, תבחר view details בצד ימין של השורה המתאימה (כרגע תהיה לך רק שורה אחת). תעדכן את כל המקומות שמופיע המספר הישן (אצלי זה מופיע ב-range start/stop, router, dns).

ב. ב-Dashboard של ה-GUI למטה יש רשימה של הממשקים, ובשורה של switch0 (יופיע תחת השם Local לפי הקונפיגורציה ששיתפת) תבחר config בצד ימין של השורה. כאן יש רק מקום אחד לעדכן את הכתובת של הראוטר עצמו.

אחרי שעדכנת זאת, תצטרך לגרום למחשב לקבל כתובת חדשה מהראוטר (בשביל שיהיה בטווח הנכון). אם זה לא קורה אוטומטית, ב-windows אפשר לעשות זאת ע"י:

קוד: בחירת הכל

ipconfig /release
ipconfig /renew
2. אם צריך תשנה את ה-subnet במודם/ראוטרים כך שלכל מודם/ראוטר יהיה subnet יחודי, כלומר שה-subnet של כל מודם/ראוטר יהיה שונה מהשני ושונה מה-subnet של הרשת הראשית. אפשר לדוגמא שהמודם/ראוטר הראשון יהיה 192.168.2.0, השני יהיה 192.168.3.0 והרשת הראשית 192.168.7.0 (כאשר התחילית של 192.168 זה אחד מהטווחים השמורים לרשתות פרטיות, המספר השלישי נבחר בצורה לגמרי שרירותית רק שונה מ-1 שמאד נפוץ וכדאי להמנע ממנו והמספר הרביעי זה הכתובת בתוך ה-subnet ושמציינים את הכתובת של ה-subnet מקובל לשם בו 0).

eran405
אחראי תחום רשתות
אחראי תחום רשתות
הודעות: 3388
הצטרף: פברואר 2012
נתן תודות: 380 פעמים
קיבל תודות: 790 פעמים

נושא שלא נקרא #43 

(שם לב שלנושא של הסאבנטים עניתי בהודעה לעיל)
integral כתב: מה היתרון של ה STICKY? איזה אופציה כדאי לבחור?
...
אני כנראה לא האדם הכי טוב לקבל ממנו עיצות בנושא כי אין לי ניסיון עם load balancing אז כל מה שאני מפרט כאן זה ידע "תיאורתי":

ברגע שאתה מפעיל load balancing (כלומר לא failover-only), אז הראוטר יחלק את התעבורה היוצאת בין שני חיבורי האינטרנט שלך. בפרט זה אומר שפניות לאותו השרת או לאותם שרתים של אותו השירות יכולים לצאת כל פעם מחיבור אחר. בשביל חלק גדול מהשימושים באינטרנט זה לא אמור להשפיע (לדוגמא כשאתה מוריד תוכן של דף אינטרנט "רגיל" לא איכפת לשרת מאיזה כתובת אתה פונה). במקרה של double NAT אתה יכול מאד בקלות לראות בטרייס החוצה דרך איזה מודם/ראוטר אתה יוצא לאינטרנט, תבדוק מספר טרייסים אחד אחרי השני לאותו השרת, אתה אמור לראות שלפעמים הוא יוצא מהחיבור הראשון ולפעמים מהשני.

שירותים מסויימים, כולל "סתם" אתרי אינטרנט, יכולים לבדוק מאיזה כתובת אינטרנט מגיעה הפניה ויכולים או לחסום (לדוגמא מסיבות של security) או להתבלבל אם מתחילים לדבר איתם דרך כתובת אחת וממשיכים מכתובת אחרת. בגלל שאין לי ניסיון עם load balancing קשה לי להגיד איך בדיוק זה בא לידי ביטוי אבל כיביכול אתרים של בנקים יכולים להיות רגישים לדברים כאלה (אין לי מושג האם זה נכון גם לגבי אתרים של בנקים בארץ). אולי מישהו שמכיר יכול להשלים באיזה שימושים במעשי רואים את הבעיה ללא sticky.

ההגדרות של sticky באות לפתור זאת ולגרום לתעבורה של אותו ה-"traffic session" לצאת דרך אותו הממשק (אני מודה שאני לא בטוח בדיוק למה הם מתכוונים "traffic session" ועל איזה timeout הם מדברים). למיטב הבנתי הראוטר עוקב אחרי כל האופציות שאתה מאפשר ב-sticky ואם כל השדות שאפשרת ללא שינוי הוא ידאג שהתעבורה תצא מאותו הממשק. לכן לא כדאי לאפשר את כל האפשריות שמצויינות שם (לדוגמא ה-source-port, לפחות בחלק מהשימושים יכול להיות "אקראי" יחסית ולכן ה-sticky לא יתפוס).

בלי ניסיון אני יכול רק להגיד מה "נשמע" לי הגיוני. הייתי מנסה לעשות sticky לתעבורה שיוצאת מאותה תחנה ומכוונת לאותו השרת, שלמיטב הבנתי מקנפגים זאת ככה:

קוד: בחירת הכל

set load-balance group G sticky dest-addr enable
set load-balance group G sticky source-addr enable
אני לא 100% האם אחרי שהגדרת sticky בצורה נכונה זה יתפוס גם לגבי טרייס, אבל בתקווה שבדקת קודם וראית שכל פעם זה יוצא מחיבור אחר, שווה לבדוק גם אחרי ההגדרה ולקוות שזה יגרום לתעבורה לצאת ממשק אחד בצורה יציבה (עד timeout מסויים).

integral (פותח השרשור)
חבר שלא מהעולם הזה
חבר שלא מהעולם הזה
הודעות: 7900
הצטרף: דצמבר 2005
נתן תודות: 312 פעמים
קיבל תודות: 543 פעמים

נושא שלא נקרא #44 

@eran405
·
תודה רבה, אכן כנראה שהבנתי את העניין. אם כי הלכתי הלכתי רחוק יותר :lol: את ה 225 השארתי על 10.0.0.138, את ה 9970 הפכתי ל 172.16.1.1 ואת ה ER-X השארתי על 192.168.1.1 כולם על 24.

לגבי ה STICKY אני חושב שאשאיר כמו שהוא כל עוד שלא נתקלתי בבעיות.

ziv_r
סמל אישי של משתמש
עורך ראשי HTmag
עורך ראשי HTmag
הודעות: 44362
הצטרף: ינואר 2005
נתן תודות: 2084 פעמים
קיבל תודות: 4725 פעמים

נושא שלא נקרא #45 

@eran405
ערן, איזה הסברים, לעשות מאמר מהם :אחלה:

שלח תגובה

חזור אל “רשתות, אינטרנט ו- Fiber”