שאלה על FTP

adventureboy

New member
שאלה על FTP

אני מנסה לבנות איזה משהו שקשור ל FTP והשאלה שלי היא על פורטים של FTP. בעזרת הפקודה PORT שולחים ל FTP איזה פורט כלשהו מופרד בפסיקים. אני יודע ש 4 הספרות הראשונות זה ה IP שלי, השאלה שלי היא מהם 2 הספרות השניות. והאם הספרה האחרונה מתקבלת מהשרת, אם כן בעזרת איזו פקודה השרת מקצה את הסיפרה האחרונה?
 

uzi2

Active member
יש שם 6 ספרות

ה- 4 הראשונות הם הארבעה המספרים של המחשב שאליו אמור להשלח ה- data, והשניים האחרונים הם "החצי הראשון" ו"החצי השני" של מספר הפורט שאליו מבצע הפקודה מבקש לשלוח את ה- data. לדוגמא אני לקוח שמבקש מהשרת לשלוח לי את הקבצים שאבקש ל- data port 5063 וה- IP שלי הוא 212.123.213.132 אז הפקודה שאתן תהיה
PORT 212,123,213,132,19,199​
וזאת משום שפורט 5063 בדצימל זה 13C7 בהקסה-דצימל. 13 בהקסה זה 19 בדצימל, ו- C7 בהקסה זה 199 בדצימל. מהרגע ששלחתי את הפקודה הזאת, אם השרת יכבד אותה, אז הוא ישלח את הנתונים (קבצים) שיבוקשו בהמשך, לפורט 5063 של: 212.123.213.132
 

adventureboy

New member
אתה יכול לרשום לי...

את הנוסחאות לחישוב והמרה מהקסה דצימל לדצימל למספרים רגילים וכל התורה הזו?
 

uzi2

Active member
אם זה רק לצורך החישוב הזה

אז תרשה לי לקצר ולא להסביר את כל החישוב: נסמן
PORT h1,h2,h3,h4,p1,p2​
ונסמן ב- P את מספר הפורט הרצוי: אזי כדי לקבל את p1,p2 מתוך P, נשתמש בנוסחה הבאה:
p1= Int(P/256) p2=256*Frac(P/256)​
וכדי לחשב את P מתוך p1,p2 נשתמש בנוסחא:
P=256*p1+p2​
שים לב שבדוגמא שלנו:
Int(5063/256)=Int(19.77734375)=19 Frac(5063/256)=Frac(19.77734375)=0.77734375​
 
למעלה