㈠ 怎麼通過ftp傳送文本文件
不知道你的winsock是udp還是tcpip協議
這里給你一個我寫的實例我是用的udp這個發送了一段數據不一定接收就正確所以我做了校驗
'以下是接收文件的
OptionExplicit
DimFOKAsBoolean,FsAsLong,FileNumberAsInteger,LenFileAsLong '文件的長度
PrivateSubCommand1_Click()
UnloadMe
EndSub
PrivateSubCommand2_Click()
OnErrorResumeNext
DimAAsString
Me.Caption="開始下載"
IfDir(Text2.Text)<>""AndChV.Value=0Then
IfMsgBox("文件已經存在,覆蓋嗎?",vbCritical+vbYesNo)=vbYesThenKillText2.TextElseExitSub
Else
KillText2.Text
EndIf
IfText2.Text=""ThenText2.Text=Text1.Text
'Command2.Enabled=False
IfCh.Value=0ThenA="#DOW#"ElseA="#DOV#"
FMain.Wsk.SendDataA&Text1.Text
Wt1
FMain.Wsk.SendData"#DOE#"&Text2.Text
EndSub
PrivateSubForm_Load()
DimAAsString
'FMain.Ts.Enabled=True
OnErrorResumeNext
IfFMain.Cb.Text="本地組"OrFMain.Cb.Text="全部組"Then
Me.Caption="請重選下載用戶[「組」不能正確下載]"
Else
Command1.Top=-2000
Winsock0.LocalPort=FilePort
Winsock0.Bind
EndIf
EndSub
PrivateSubForm_Unload(CancelAsInteger)
OnErrorResumeNext
Winsock0.Close
Err.Clear
EndSub
PrivateSubLa_Click()
CDL.FileName=""
CDL.ShowOpen
Text2.Text=CDL.FileName
EndSub
PrivateSubWinsock0_DataArrival(ByValbytesTotalAsLong)
OnErrorResumeNext
DimFileByte()AsByte,AAsString,MendByte()AsByte,IAsLong,JAsLong,TempAsString,WAsString
Winsock0.GetDataFileByte,vbArray+vbByte'接收類型為:位元組數組
J=UBound(FileByte)'獲得包長
ForI=0To7Step2'合並包頭
Temp=Temp&Chr(FileByte(I))
Next
ForI=0To9'文件發送結束標記
A=A&Chr(FileByte(I))
Next
IfA="#ERR#"ThenWinsock0.SendData"no"
IfA="#END#"Then
ForI=0ToLen(FMain.TIn.Text)
IfI<100Then
W=Left(Right(FMain.TIn.Text,I),1)
IfW="!"Then
W=Left(Right(FMain.TIn.Text,I+4),5)
ExitFor
EndIf
Else
ExitFor
EndIf
NextI
IfW<>"下載完成!"Then
FOK=False
Me.Caption="下載完成!["&Text2.Text&"]"
FMain.TIn.Text=FMain.TIn.Text&"["&Now&"]"&"下載完成!("&Fs&"<="&LenFile&")"&vbCrLf
Command2.Enabled=True
EndIf
Else
IfVal(Temp)=JThen'比較長度看丟包沒有
ReDimMendByte(J-8)
ForI=0ToJ-8'提出包頭
MendByte(I)=FileByte(I+7)
Next
Fs=Fs+UBound(FileByte)-7
Put#FileNumber,,MendByte'寫文件
Winsock0.SendData"ok"'發送繼續發送的請求
Me.Caption="文件下載完成:["&Left(Fs/LenFile*100,4)&"%]"
Else
IfLeft(A,10)="#SENDSTA#"Then
A=""
ForI=10ToUBound(FileByte)'文件發送結束標記
A=A&Chr(FileByte(I))
Next
LenFile=Val(Left(A,InStr(A,"//")-1))
ForI=0ToLen(Text2.Text)
A=Left(Right(Text2.Text,I),1)
IfA=""ThenExitFor
Next
IfDir(Left(Text2.Text,Len(Text2.Text)-I+1),vbDirectory)=""ThenMkDirLeft(Text2.Text,Len(Text2.Text)-I+1)
'"#SENDSTA#"&FileLen(Text1.Text)&"//"&Text2.Text
FileNumber=FreeFile'取得未使用的文件號
Fs=0
OpenText2.TextForBinaryAs#FileNumber'打開文件
Else
IfA<>"#SENDEND#"Then
Winsock0.SendData"no"'出現丟包,請求重發
Else
Winsock0.SendData"#END#"'發送繼續發送的請求
Close#FileNumber
Reset
IfFOK=FalseThen
FOK=True
Me.Caption="下載完成!["&Text2.Text&"]"
FMain.TIn.Text=FMain.TIn.Text&"["&Now&"]"&"下載完成!("&Fs&"<="&LenFile&")"&vbCrLf
Command2.Enabled=True
Else
FOK=False
EndIf
EndIf
EndIf
EndIf
EndIf
EndSub
㈡ 如何用ftp傳輸文件
2、知道用戶名和密碼
3、在ie地址欄中輸入ftp://ip地址(域名)@用戶名:密碼
也好像是ftp://用戶名:密碼@ip地址(域名)---我記不清了,你都試試。
4、如果登錄成功,就能看到ftp服務的文件目錄,和本地目錄差不多
5,將你本地的文件直接拖到遠端目錄即可。
還有專門的軟體:cutftp 可以上傳或下載。
㈢ FTP採用的是什麼工作模式,可以實現的文件傳輸方式有哪兩種
FTP可以採用2種工作模式,分別是Port模式、Passive模式;
FTP的傳輸有兩種方式:ASCII、二進制:
1、ASCII傳輸方式:
假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式
2、二進制傳輸模式:
在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。
(3)ftp相互傳輸文件擴展閱讀:
FTP文件傳輸協議的特點介紹:
FTP工作在TCP/IP模型的應用層,基於的傳輸協議是TCP,FTP客戶端和伺服器之間的連接是可靠的,面向連接的,為數據的傳輸提供了可靠的保證。
FTP的主要特徵:
1、控制連接是建立在客戶協議解釋器和伺服器協議解釋器之間用於交換命令與應答的通信鏈路
2、數據連接是傳輸數據的全雙工連接。傳輸數據可以發生在伺服器數據傳輸過程DTP和客戶DTP之間,也可以發生在兩個伺服器的DTP之間。
㈣ 怎麼用FTP傳輸文件
這個問題說大有點大了,
我說的簡單一點希望你滿意
1.下載一個FTP軟體,例如cuteFTP
,地址是:
http://www.onlinedown.net/soft/7249.htm
這是一個老牌的FTP軟體
2.安裝完畢後,打開,在地址欄中輸入你要傳輸文件的FTP地址,例如是
ftp://www.sina.com.cn
(我只是舉例)
有埠的填好埠,例如
ftp://www.sina.com.cn:80
或者在軟體中填好
然後會提示你填寫帳號密碼(如果無帳號密碼就不填)
伺服器正常的話就正常登陸了
登陸後界面跟你看電腦硬碟是一樣的了(打比方你打開D盤是什麼樣子,這個軟體里也會這樣,很簡單)
之後你復制
粘貼文件什麼的都可以做了(刪除文件
等操作,如果伺服器給你的帳號沒設置這個功能就不能用)
基本就這么簡單..
我的回答對你有幫助嗎
㈤ 怎麼把一個FTP伺服器的文件傳到另一個FTP伺服器上不
FTP互傳是正常的操作方式:
1.
打開ftp客戶端,比如flashfxp,首先鏈接前者ftp客戶端,軟體左側出現伺服器文件列表。
2.
在客戶端右側鏈接功能,直接鏈接後者ftp伺服器,出現目錄列表。
3.
在左側選擇需要傳輸的文件,直接拖放到右側目標文件夾,即可開始自動傳輸。
㈥ FTP文件傳輸原理
在遇到了一個wireshark數據包分析題之後,看到了ftp的相關信息,但是沒找到相關的flag信息,請教了大佬的解釋,才知道ftp文件傳輸並不是在21埠,ftp文件傳輸有主動和被動兩種方式,
被動(PASV)模式:
PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條控制連接。當需要傳送數據時,伺服器在命令鏈路上用PASV命令告訴客戶端:「我打開了XXXX埠,你過來連接我」。於是客戶端向伺服器的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
伺服器控制埠(21),伺服器端等待的數據傳輸埠(動態申請)
ftp伺服器動態申請一個埠(一般大於1024)然後告訴客戶端,我在這個埠上等待你的連接,客戶端收到以後便向伺服器的這個埠發起連接,數據連接建立以後,數據傳輸就可以開始了
埠計算方法:172,16,101,104,7,254,256*7+254=2046
一次完整的被動連接及數據傳輸過程:
狀態: 正在連接 172.16.101.104:21...
狀態: 連接建立,等待歡迎消息...
響應: 220 Serv-U FTP Server v6.4 for WinSock ready...
命令: USER test
響應: 331 User name okay, need password.
命令: PASS ****
響應: 230 User logged in, proceed.
狀態: 已連接
狀態: 讀取目錄列表...
命令: PWD
響應: 257 "/" is current directory.
狀態: 列出目錄成功
狀態: 正在連接 172.16.101.104:21...
狀態: 連接建立,等待歡迎消息...
響應: 220 Serv-U FTP Server v6.4 for WinSock ready...
命令: USER test
響應: 331 User name okay, need password.
命令: PASS ****
響應: 230 User logged in, proceed.
狀態: 已連接
狀態: 開始上傳 E:\Downloads\liugong\liugong\404.htm
命令: CWD /
響應: 250 Directory changed to /
命令: TYPE A
響應: 200 Type set to A.
命令: PASV
響應: 227 Entering Passive Mode (172,16,101,104,8,86)
命令: STOR 404.htm
響應: 150 Opening ASCII mode data connection for 404.htm.
響應: 226 Transfer complete.
狀態: 文件傳輸成功,傳輸了 2,052 位元組 (用時1 秒)
狀態: 讀取目錄列表...
命令: TYPE I
響應: 200 Type set to I.
命令: PASV
響應: 227 Entering Passive Mode (172,16,101,104,8,88)
命令: MLSD
響應: 150 Opening BINARY mode data connection for MLSD.
響應: 226 Transfer complete.
狀態: 列出目錄成功
主動(PORT)模式:
PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條控制連接。當需要傳送數據時,客戶端在命令鏈路上用PORT命令告訴伺服器:「我打開了XXXX埠,你過來連接我」。於是伺服器從20埠向客戶端的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
一次完整的主動連接及數據傳輸過程:
狀態: 正在連接 172.16.101.104:21...
狀態: 連接建立,等待歡迎消息...
響應: 220 Serv-U FTP Server v6.4 for WinSock ready...
命令: USER test
響應: 331 User name okay, need password.
命令: PASS ****
響應: 230 User logged in, proceed.
狀態: 已連接
狀態: 開始上傳 E:\Downloads\liugong\liugong\404.htm
命令: CWD /
響應: 250 Directory changed to /
命令: TYPE A
響應: 200 Type set to A.
命令: PORT 172,16,101,104,8,76
響應: 200 PORT Command successful.
命令: STOR 404.htm
響應: 150 Opening ASCII mode data connection for 404.htm.
響應: 226 Transfer complete.
狀態: 文件傳輸成功,傳輸了 2,052 位元組 (用時1 秒)
狀態: 讀取目錄列表...
命令: TYPE I
響應: 200 Type set to I.
命令: PORT 172,16,101,104,8,77
響應: 200 PORT Command successful.
命令: MLSD
響應: 150 Opening BINARY mode data connection for MLSD.
響應: 226 Transfer complete.
狀態: 列出目錄成功
再回來說這一題,看到
計算埠為 4*256+17=1041
埠過濾,追蹤tcp流
㈦ 如何使用FTP將我電腦上的文件傳給別人
分類: 電腦/網路
問題描述:
我們因為可能不會同時上網,我電腦上有個一百多M的文件想傳給別人,我沒用過FTP,有誰可以告訴我哪個FTP軟體好用.
講的詳細點,一步一步.
解析:
用cutftp這個軟體吧。
CutFtp的詳細使用步驟
很簡單的!~
1.安裝CuteFTP軟體
軟體下載地址:
music.flasher123/hanlan/jhhb/cuteftp5.0.1.rar
這里提供的下載未測試,不知道是什麼版本
軟體下載以後,解壓縮,然後直接運行cuteftp.exe文件一步步安裝即可。
2.獲取FTP伺服器地址、用戶名、密碼
你只有獲取了FTP伺服器的訪問授權,才能夠正常訪問FTP伺服器。一般情況下,你可以通過以下幾個渠道獲取FTP伺服器的訪問授權:
(1)注冊免費伺服器空間
(2)購買付費伺服器空間
(3)獲取共享FTP伺服器帳號
你所獲得的FTP伺服器的訪問授權包括以下3個內容:
(1) FTP伺服器地址(比如IP地址218.4.33.125或者域名地址.flasher123)
(2)用戶名
(3)密碼
有了FTP伺服器授權法寶,你就可以繼續下面的步驟了。
3.設置FTP站點連接
運行CuteFTP,CuteFTP窗口設計得層次分明,功能一幕瞭然。我們只需通過滑鼠簡單的拖曳操作就可以完成上傳和下載的工作了!不過,別著急,現在還不能完成具體的上傳和下載任務,因為,從圖1可以看出,現在你還沒有連接到任何一個FTP伺服器(伺服器目錄列表窗口還是空白的)。要想連接到一個被授權的FTP伺服器,你必須將前面第2點說明的那些授權對象(FTP伺服器、用戶名、密碼)在CuteFTP軟體中進行設置。具體方法如下:
(1)打開【站點管理器】對話框
選擇【文件】|【站點管理器】命令(或者單擊工具欄最左邊的【站點管理器】按鈕),打開【站點管理器】對話框,(2)新建連接站點
在【站點管理器】對話框中,單擊【新建】按鈕,建立一個新站點,你可以根據所建立站點的特點重新輸入一個站點名稱。
(3)輸入伺服器地址、用戶名和密碼
單擊你新建的站點名稱,在右邊對應的文本框中輸入授權的伺服器地址、用戶名和密碼,你可以參考圖2所示進行設置。除了伺服器地址、用戶名和密碼這三項是根據你自己的授權進行設置以外,其他參數一般都和圖2所示一致。
(4)取消防火牆設置
有些伺服器有一些特別的要求,比如會進行一些高級參數的設置,比較常見的是要取消防火牆設置。單擊【編輯】按鈕,彈出【設置】對話框,在這個對話框中單擊【高級】標簽,然後將窗口中的【使用PASV模式】和【使用防火牆設置】兩項前面的復選勾去掉,最後單擊【確定】按鈕, 至此,你的FTP伺服器連接就基本設置好了,在圖2所示的對話框中單擊【連接】按鈕,這樣就可以連接到伺服器上了。如果連接一切正常的話,圖1所示的「伺服器目錄列表」窗口中就會將遠端授權給你的伺服器目錄列表出來。
如果你要上傳文件,只需用滑鼠將「本地目錄」窗口中的文件拖曳到「伺服器目錄列表」窗口中的相應目錄即可,下載文件也是同樣的方法。另外,你還可以根據授權情況,在「伺服器目錄列表」窗口中進行建立目錄、刪除文件、文件重新命名等操作。
㈧ ftp 能實現兩個電腦之間的文件傳輸嗎
ftp不能實現互傳。
也就是你可以上傳下載文件到fps伺服器,但是ftp伺服器不能傳文件到你的電腦。
而且文件傳輸也不是自動的。