Created FTP (markdown)

Matt 2018-05-27 19:25:48 -07:00
parent fd3e214bf8
commit 472a582b82
1 changed files with 40 additions and 0 deletions

40
FTP.md Normal file

@ -0,0 +1,40 @@
How to connect to an ftp server hosted inside xqemu
===================================================
Writing files to your Xbox's HDD is currently a pain. It will be easy once the
fatx driver has write capabilities, but until then you have the option of
connecting over FTP to a server hosted inside xqemu.
Run xqemu as normal, but add option to forward to port 21 inside VM as follows:
-net nic,model=nvnet -net user,hostfwd=tcp:127.0.0.1:8081-:21
It's assumed you're using Filezilla. If not, look for the respective settings in
your client. Fire up Filezilla and set the following options:
Filezilla > Settings > Connection > FTP > Active mode
Active mode IP, "Use tho following IP address:" 10.0.2.2
Make sure "Don't use external IP address on local connections." is NOT checked
Then create your new "Site" with IP address 127.0.0.1 and port 8081. Under Transfer Settings, check Active.
Details for the curious
-----------------------
FTP has two modes, passive and active.
Passive mode involves the client first connecting to the server for control and
then again on another port other for data. The client first connects, then the
server gives it another address and port to connect to for data. The first
problem with this is that the server reports to the client the only IP address
that it knows (10.0.2.15) which is not correct for our needs--we need 127.0.0.1.
That's alright because we can override this in Filezilla. The second problem is
that we don't know which port the server is going to choose, so we can't forward
it ahead of time.
In active mode, the client first connects to the server, then the server
connects to the client! The client needs to give the IP address for the server
to connect to. By default, it will give your computer's IP address, but the
guest cannot connect to using that IP. So instead we need to override this
setting and provide the IP address that the guest should connect to to actually
connect to the host, which is 10.0.2.2.