China Trip 2025

We loved our trip to China in the past two years that we decided to do another trip this year. Since we now live in the age of hypermedia, here is a post with more video and less words. Enjoy.

DayDescriptionLink
Day 1: October 18
Toronto to Guangzhou
We left Toronto on October 17th (early 18th 01:30) and arrive in Guangzhou at 05:00 on the 18th. We spent the day getting to know our flat at Foshan, Shunde, and explore the neighbourhood.Click to Play
Day 2: October 19
Guangzhou
Met with Carol’s cousins and relatives along with our Canadian neighbours who also happened to be in China.

We spent the entire day exploring restuarants in Guangzhou. It was good to catch up.
Click to Play
Day 3: October 20
Shunde 广东佛山顺德
This was a relaxing day, and we spent it to eat at local restaurants and explore the near by shopping mall.Click to Play
Day 4: October 21
Guangzhou 广州 to Chongqing 重庆
We explore dim sum in the morning at a local restaurant and then packed and prepared for our flight to Chongqing.Click to Play
Day 5: October 22
Chongqing 重庆
Move from our airport hotel to a hotel that is located in the centre of Chongqing. We then met up with a good friend who is also visiting from Canada but he is a Chongqing native. We spent the day exploring Chongqing city.

Highlights of the day was:
* Jiefangbei 解放碑中央商务区
* Shancheng Lane, Chongqing 山城巷 重庆
* Chongqing Hot Pot 重庆火锅
* Huangge Ancient Road 南山 黄葛古道
* Beautiful Chongqing Night Scape
Click to Play
Day 6: October 23
Chongqing 重庆
Exploring the Chongqing SPA!;
Visit the other side of the river;
Walk the Beicang 北倉;
“Shibati” (Eighteen Ladders) 十八梯;
Pose in front of Hongyadong 洪崖洞;
Click to Play
Day 7: October 24
Chongqing 重庆
A road trip to Diaoyucheng Fortress 钓鱼城

This is the last Song Dynasty held-out during when the Mongols invaded China and created the Yuan Dynasty.

During the battle, the Mongol heir prince was killed with a rock bombardment denfence. This event was a pivotal moment that determined Europe’s future. Because of the heir’s death, the remaining princes fighting in Eastern Europe decided to turn back to fight for the crown.
Click to Play
Day 8: October 25
Departing Chongqing 重庆 on the Yangtze River Cruise 长江游轮
We had our last breakfast in Chongqing and explored unique architecure of Chongqing’s mountainous neighbourhood. Went back to the SPA until we were picked up to board our river cruise.Click to Play
Day 9: October 26
Departing Chongqing 重庆 on the Yangtze River Cruise 长江游轮
Visited the retired nuclear refinement site of Project 816.Click to Play
Day 10: October 27
Wushan – The Lesser Three Gorges – Badong
This was a long day which included a bus ride to the top of the gorges, a relaxing river ride along the gorges, and finally a cave tour.Click to Play
Day 11: October 28
End of the Yangtze River Cruise and Arrived at Yichang 湖北 宜昌
The cruise ended for us at Yichang where the Three Gorges Dam is at. After a tour of the dam and its museum we rested at our hotel and organized a private tour on the near by gorges and enjoy the sunset. We also had an excellent Hubei 湖北 dinner.Click to Play
Day 12: October 29
Taking the High Speed Rail from Yichang to Changsha 湖南 长沙
This was a relaxing transit day with the evening exploring the night eatery on the local streets.Click to Play
Day 13: October 30
Changsha 湖南 长沙
Explored the Hunan Museum 湖南博物院. Unfortunately I wrecked my glasses just as we were entering the museum so I did not end up seeing much. We went to a local mall to have my glasses replaced with my latest prescription at half the Canadian price!Click to Play
Day 14: October 31
Taking the High Speed Rail from Changsha to Zhangjiajie 湖南 张家界
It was late afternoon when we arrived, so we at a nice dinner and went to visit 72 Odd Towers 72奇楼.Click to Play
Day 15: November 1
Exploring the wonders of Zhangjiajie 湖南 张家界
We hired a local private tour and explore scenary that inspired the Avatar planet in the movie. Also got a local hair cut and ate a local authentic meal.Click to Play
Day 16: November 2
Door Way to Heaven of Zhangjiajie 湖南 张家界
Climbed 999 steps to the door way to heaven at Tianmen Mountain 天门山. Treated the wonderful tour guide to a local, delicious lunch and get ready to board the high speed rail back to Guangzhou.Click to Play
Day 17 & 18: November 3 & 4
Recovering in Shunde
Got ourselves registered at the Police Station (no footage), and then it is all about sampling Shunde cuisine.Click to Play
Day 19 to 22: November 5 to 8
Boluo 博罗, Fenggang 凤岗, Dongguan 东莞, Shunde 顺德
Took an intercity train from Shunde to Dongguan and met up with Carol’s cousin for some country scenery and food. Spend a couple of days in Dongguan reacquainting with Dongguan food scene, and the head back to Shunde.Click to Play
Day 23 to 24: November 9 to 10
Shunde 顺德, Foshan 佛山
Had a crab dinner, enjoy the tea house, and did lots of walking and eating in Shunde.Click to Play
Day 25: November 11
Shunde 顺德, Foshan 佛山
Walked to a another dim sum restaurant, Li Yuan Restaurant 荔园酒家;
Took a DiDi to Shiwan Ceramic Street 石湾公仔街;
Had the best claypot rice this trip;
Click to Play
Day 26 to 27: November 12 to 13
Shunde 顺德, Foshan 佛山
The most impressive furniture mall I have ever been to, Louvre Furnishings 罗浮宫家居.
We had a below average taste but above average dim sum at Zhuroupo Private Home Cuisine 猪肉婆私房菜.
Visited our local park by the river, and then took our flight back to Canada in the evening.
Click to Play


TelMax – CGNAT – Support Experience

Recently, I added TelMax as our Internet Service Provider. One of the requirements for their service is an externally accessible IP address. When the service was provisioned this past September, this requirement was satisfied. However, in the middle of this month (November), the service was switched to CGNAT. You can click on the link to learn more about CGNAT, but effectively, after their CGNAT rollout, I no longer have an externally accessible IP. This was frustrating, especially when I was in China working remotely and depended on this external IP. I understand that TelMax wants to tier their services so that a dedicated IP address is in a higher tier service. However, to make this change unannounced and unscheduled is really not professional. Their sales staff at the time also promised that an external IP will be available as part of the residential offering; clearly, it was not, so buyers beware.

Long story short, this past Friday, I called into their customer service and had my service upgraded to a business service where a dedicated IP is part of the offering. Kudos to the customer service rep who handled the migration and provisioning. This new service also gave me 4Gbps symmetrical throughput, so that is a nice to have.

Unfortunately, the service did not last, and in about four hours, the service went down. Since this happened off business hours, I called back on Saturday morning. TelMax first line support during non-business hours is effectively useless. The result of the Saturday call was, “Thank you for the information; sorry about your situation; and someone will get back to you.” Very open-ended without a commitment for a time range of resolution. You are effectively left hanging. Apparently, today I learned that it can be up to 72 hours for someone to get back to you. This is clearly not acceptable for a business account, in my opinion.

On Sunday, feeling frustrated and unloved by TelMax, I went to their online portal and wrote a lengthy support email describing my situation. Crickets, not even an auto reply email. I called them on Monday and got hold of their tier 2 support and tried to get the service back up and running. Full disclosure here. At this point, we all thought the issue was at TelMax and not with me. My firewall was working fine because the rest of my network is humming along. We even switched out the cable thinking the cable may be defective. I asked whether there is any way to verify that ethernet port labeled 10GE on the fibre modem is working or not. He told me it is working. I found it strange why there is no physical link indicator then? He decided to escalate the issue, and the call ended.

2+ years old SFP+ module failed

No one got back to me for the entire Monday. Today I woke up and decided to use my spare laptop to directly test the 10GE port on the fibre modem, and behold there was activity! This confirmed that TelMax equipment was fine at least electrically. The problem must reside with my equipment. I swapped out the SFP+ module with a new one and the physical connection was resolved. Whew!

Since TelMax connections are bound to the physical network interface ID (MAC address), I still had to call into customer support this morning and talked to another tier 2 support rep named Sue. She was wonderful and much more knowledgeable. A few minutes later she had it resolved by rebinding the service to the new SFP+ module’s MAC.

Take aways from these collective events:

  • TelMax should not switch their networking architecture unannounced and unscheduled when it impacts existing customer experiences. I spent literally hours in China trying to resurrect services with CGNAT. Ultimately, I had to switch back to a backup Rogers connection.
  • When your ISP is down, don’t assume it is just their fault even though 99% it is. 😁
  • TelMax support staff’s technical knowledge can range from nothing to super helpful. On the Monday call, the staff should have advised me to use a spare laptop so that we can eliminate my networking equipment as the issue. In fairness, I should have caught this as well, but I’m a bit rusty and I am the stupid customer here.
  • The TelMax support experience is too open-ended. There is no ticket, no status check, nothing.

In the end, I was in the driving seat to resolve this issue, and it was not TelMax. This is not a good customer experience. I wish TelMax would improve their support capabilities and perceptions as fast as possible. I wish them luck.

Setting Up a Pseudo VPN Using sshuttle

I recently was in a situation where I am remote and all of my standard VPN clients stopped working. All I had was a private opened ssh port to my remote server. Luckily I had the foresight to setup this private port before I left home!

I was able to get certain SOCKS to work using the ssh -D option, like:

ssh -v -p PRIVATE_PORT -C -D 1080 USER@REMOTE_HOST.DOMAIN

With this I was able to browse the basics after making the required SOCKS configuration with my WiFi network settings. However, accessing hosts on my private network is still an issue. I can also get macOS Screen Sharing to a specific remote host (e.g. HOST2) to work by establishing a port tunnel using:

ssh -v -p PRIVATE_PORT -C -L 5901:HOST2:5900 USER@REMOTE_HOST.DOMAIN

I then proceeded to create a Screen Sharing session using port 5901 instead of the default 5900 on my localhost.

With the help of chat.deepseek.com, I was able to discover a nice tool called sshuttle. This seems like the perfect solution for me. Unfortunately I was not able to install sshuttle because GitHub was blocked where I am. I had to install the utility manually. First, I had to configure my local git environment to use the SOCKS server that I created earlier.

git config --global https.proxy socks5://127.0.0.1:1080
git config --global http.proxy socks5://127.0.0.1:1080

I then proceeded to clone the repository and create a temporary Python environment for a temporary install.

git clone https://github.com/sshuttle/sshuttle.git
cd sshuttle
python3 -m venv ~/Applications/sshuttle
source ~/Applications/sshuttle/bin/activate
python -m pip install .
sshuttle --version

Now that I have a sshuttle installed in a temporary location, I can establish a pseudo VPN using ssh tunneling with sshuttle.

sshuttle -v --dns -r USER@REMOTE_HOST.DOMAIN:PRIVATE_PORT 0.0.0.0/0 --to-ns PRIVATE_DNS_HOST_IP

Now that everything is working. I then install sshuttle properly with brew.

HOMEBREW_NO_AUTO_UPDATE=1 brew install sshuttle

Once this is done, I removed the temporary install at ~/Applications/sshuttle and rerun the sshuttle using the brew version.

Everything is now working the way that I want. Effectively, it is as good as a VPN with all traffic being routed through my private ssh connection. Thanks to modern AI tools like DeepSeek I was able to figure this out.

China: Registration Form of Temporary Residence for Visitors

When you are visiting China, and you are not living in a hotel, such as:

  • With a relative in their own home;
  • Vacation home hosted by a third party;
  • Other bread and breakfast places;

You are required to register your place of residence at a police station. We were staying in Foshan city in Shunde area (borough) at 喜悦来国际酒店公寓. We rented a small place with an online platform. We needed to register with the police station within 24 hours of our arrival.

The requirements are laid out by the police station in the PDF document below:

We needed the following pieces of documentation:

  • From our passports:
    • The photo page;
    • The Chinese Visa page;
    • The page containing the entry stamp for the current visit;
  • We needed a copy of the ID (front and back) of the visiting relative which we previously used to apply for our Q2 Visa. You must also provide the relative’s phone number as well;
  • From the landlord or management who leased the room to you:
    • The rental contract;
    • Either one of:
      • The business registration of the management company who leased the property along with the ID card (front and back) of the person responsible for the company;
      • The ID card (front and back) of the owner of the property and the deed of the property;

Not all police station will perform the registration service, so you will have to ask around. For this trip in 2025, we had to register at:

乐从镇-在顺德区公安局乐从分局乐从社区民警中队附近

  • 广东省佛山市顺德区乐从镇荔南路b34号

The process will take approximately an hour to register assuming there is not a huge line up.

Mediterranean Cruise 2025

From September 29th, 2025 to October 10th, 2025 (inclusive), we went on a
Mediterranean Cruise on Celebrity Ascent.

Below is a table of our itinerary and a link to our home video that covers that day.

DayDescriptionVideo
MON 29 SEPROME (CIVITAVECCHIA), ITALYClick to play
TUE 30 SEPAT SEAClick to play
WED 01 OCTCHANIA (SOUDA),CRETE, GREECEClick to play
THU 02 OCTEPHESUS (KUSADASI), TURKEYClick to play
FRI 03 OCTISTANBUL, TURKEYClick to play
SAT 04 OCTISTANBUL, TURKEYSame as above
SUN 05 OCTAT SEAClick to play
MON 06 OCTMYKONOS, GREECEClick to play
TUE 07 OCTSANTORINI, GREECEClick to play
WED 08 OCTAT SEAClick to play
THU 09 OCTNAPLES, ITALYClick to play
FRI 10 OCTROME (CIVITAVECCHIA), ITALYClick to play