If all the routing tables on the Internet would be erased simultaneously, will the routers be able to rediscover them automatically?
I'm having an argument with a colleague who says that the RIPE routing tables are essential, but I remember reading that if the tables disappeared, the BGP protocol will allow routers to rediscover working routes between nodes by querying their neighbors which in turn will query their neighbors until a working route will be detected. Then that route will be used to repopulate the routing tables. After a while, all the routes will be restored (not necessarily the optimal routes).
Is that correct?
There isn't really one single Internet routing table, it all depends on where you are and what your connectivity is like. Routes are aggregated and paths can differ etc.
For the sake of this discussion, if all Internet routers lost their routing table it wouldn't take a huge amount of time the table(s) to be rebuild as advertisements would still exist from the networks in the routing table. Mostly it's down to routers CPU's to process the insane amounts of table updates there would be.
There isn't such a thing as the "RIPE Routing tables", RIPE/ARIN etc maintain whois records. These are not routing entries but just ownership records, although some ISP's (Level3 for example) use these records to build the prefix filters used to stop random announcements.
At the end of the process, all routes will be restored to their (in theory) optimal route (optimal route is a very loose phrase these days with net neutrality, transit costs etc).
BGP routers can automatically rebuild their tables because there is no central control. Every router advertises to its neighbours the IP prefixes that are reachable through itself and accepts from its neighbours similar advertisements.
Suppose A, B, C are 3 BGP routers. Initially A's table is (B,C), B's table is (A,C) and C's table is (A,B). Now we delete their routing tables.
A () --- B () --- C ()
A will send to B its IP prefixes. B will send to C its own and A's IP prefixes (because it has them in its routing table) so now C has a full routing table
A () ---> B (A) ---> C (A,B)
C will send to B its IP prefixes. B will send to A its own and C's IP prefixes so now A has again a full routing table
A (B,C) <--- B (A,C) <--- C (A,B)
From the above process B rebuilds as well a full table.
The same procedure scales for all the internet routers that eventually can rebuild their tables anytime without any central coordination. If you want more details you can search for "path vector protocols" whose advantage is to operate without central coordination and can scale to very large number of nodes (e.g. routers).
What RIPE does is to assign IP prefixes to Autonomous Systems. After that it doesn't have any active role in Internet routing.
Even if they were able to, they wouldn't. The Internet is not a technical problem, it's a business. If someone is not paying you to carry packets from point A to point B, you do not do so. Without proper configuration, routers would know which routes to accept.
If you connect to Level3 in England and I connect to AT&T in Japan, it doesn't matter that TW Telecom has a great route from Level3 in England to AT&T in Japan, the traffic is not going to take that route because nobody is paying TW Telecom to carry that traffic.
Routers have to be configured to know which routes to accept.