If you have ever handled the migration of a web service or a website from one server to another you know how crazy the experience can be. Hvis du noensinne har håndtert migrering av en web-tjeneste eller en website fra en server til en annen du vet hvor gale opplevelsen kan være. However, if you break the process up into clear steps and run constant checks you can make the experience a little easier on yourself. Men hvis du bryter prosessen opp i klare steg og løpe konstant sjekker du kan gjøre opplevelsen litt lettere på deg selv. One of the problems that you might run into towards the end of the migration is the period when you have the website running well on the new location but need to wait for the domain name to be forwarded to the new server. Et av problemene som du kan kjøre inn mot slutten av migrasjon er den perioden når du har nettstedet kjører godt på den nye plasseringen, men må vente til domenenavnet til å bli videresendt til den nye serveren. you can either shut down your service till the domain is done forwarding, or you can setup your first server to forward all its traffic to the new server. Du kan enten slå av tjenesten til domenet er gjort videresending, eller du kan lage din første server til å videresende alle trafikk til den nye serveren. Let's take a look at how you can do that on a Linux machine using IPTables. La oss ta en titt på hvordan du kan gjøre det på en Linux-maskin med iptables.
In case you didn't already know, IPtables is a software firewall that ships with most distributions of Linux. I tilfelle har du ikke allerede vet, er iptables en programvarebrannmur som leveres med de fleste distribusjoner av Linux. It is an extremely useful software and can be used for a lot more than just as a firewall. Det er et svært nyttig programvare, og kan brukes til mye mer enn bare som en brannmur. In this exercise we will configure IPTables on a Linux server to redirect all the traffic coming on port 80, (which is the default web server port), to a server with the IP 122.164.34.240 . I denne øvelsen skal vi konfigurere iptables på en Linux-server for å omdirigere all trafikken som kommer på port 80, (som er standard web server port), til en server med IP 122.164.34.240. The first step is to set your Linux box to allow this kind of forwarding to take place. Første skritt er å sette din Linux-boksen for å tillate denne typen videresending å ta plass. Open a terminal window, log in as root user and run the following command: Åpne et terminalvindu, logge inn som root bruker og kjøre følgende kommando:
# echo 1 >/proc/sys/net/ipv4/ip_forward # Echo 1> / proc/sys/net/ipv4/ip_forward
The next step is to tell IPTables to redirect the traffic to the new server: Det neste trinnet er å fortelle iptables å omdirigere trafikken til den nye serveren:
# iptables -t nat -D PREROUTING -p tcp –dport 80 -j DNAT –to-destination 122.164.34.240 # Iptables-t nat-D PREROUTING-p tcp-dport 80-j DNAT-til-destinasjon 122.164.34.240
Here's where the IPTables magic happens. Her hvor iptables magiske hender. With the third and final step we tell IPTables to rewrite the origin of connections to the new server's port 80 to appear to come from the old server. Med den tredje og siste trinnet vi fortelle iptables å skrive om opprinnelsen til tilkoblinger til ny server og port 80 til synes å komme fra den gamle serveren.
# iptables -t nat -D POSTROUTING -p tcp -d 122.164.34.240 –dport 80 -j MASQUERADE # Iptables-t nat-D POSTROUTING-p tcp-d 122.164.34.240-80-dport j Masquerade
The final step is required because if we don't tell the web server of the new server that the connections are coming from the client machines, it would think that they are originating from the old server. Det siste trinnet er nødvendig fordi hvis vi ikke fortelle webserveren av den nye serveren at tilkoblingene kommer fra klienten maskiner, ville det tro at de stammer fra den gamle serveren.























Thanks, I googled a lot before finding your post, without success. Takk, googled jeg mye før du finner ditt innlegg, uten hell.
That does exactly what I want. Det gjør akkurat hva jeg vil.
However, there is a typo : Men det er en skrivefeil:
“iptables -t nat -D PREROUTING” should read “iptables -t nat -A PREROUTING” "Iptables-t nat-D PREROUTING" skal lese "iptables-t nat-A PREROUTING"
Many thanks, works perfectly well with -A instead of -D (which is for deleting the rules). Mange takk, fungerer godt med-A i stedet for-D (som er for sletting av reglene).