diff --git a/tools/internal_ci/helper_scripts/pre_build_linux.sh b/tools/internal_ci/helper_scripts/prepare_build_linux_rc
old mode 100755
new mode 100644
similarity index 92%
rename from tools/internal_ci/helper_scripts/pre_build_linux.sh
rename to tools/internal_ci/helper_scripts/prepare_build_linux_rc
index 5ce8fe6de3688cd0348b0dd790ae5bed29edfbb5..c8cb5a0c40fbc406c08a4cbf0f57835f852fee26
--- a/tools/internal_ci/helper_scripts/pre_build_linux.sh
+++ b/tools/internal_ci/helper_scripts/prepare_build_linux_rc
@@ -28,11 +28,10 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-set -ex
+# Source this rc script to prepare the environment for linux builds
 
-# Enable IPv6 in Docker
-sudo sed -i s/DOCKER_OPTS=/DOCKER_OPTS=\"--ipv6\"/g /etc/init.d/docker
-sudo /etc/init.d/docker restart
+# Need to increase open files limit for c tests
+ulimit -n 32768
 
 # Download Docker images from DockerHub
 export DOCKERHUB_ORGANIZATION=grpctesting
diff --git a/tools/internal_ci/linux/grpc_interop_badserver_java.sh b/tools/internal_ci/linux/grpc_interop_badserver_java.sh
index e85949bbff0e2204f24375f2ff33fd665204b4e5..02d7b9d43168babc18d11fe1b639a060f5b17ca3 100755
--- a/tools/internal_ci/linux/grpc_interop_badserver_java.sh
+++ b/tools/internal_ci/linux/grpc_interop_badserver_java.sh
@@ -35,6 +35,7 @@ export LANG=en_US.UTF-8
 # Enter the gRPC repo root
 cd $(dirname $0)/../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_interop_tests.py -l java --use_docker --http2_server_interop $@
 
diff --git a/tools/internal_ci/linux/grpc_interop_badserver_python.sh b/tools/internal_ci/linux/grpc_interop_badserver_python.sh
index 2010597d91bb3e4f5f055d4ad7ce36621ff24e32..3ceb181d9048480623f1cbea92ffb609b6ee2817 100755
--- a/tools/internal_ci/linux/grpc_interop_badserver_python.sh
+++ b/tools/internal_ci/linux/grpc_interop_badserver_python.sh
@@ -35,6 +35,7 @@ export LANG=en_US.UTF-8
 # Enter the gRPC repo root
 cd $(dirname $0)/../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_interop_tests.py -l python --use_docker --http2_server_interop $@
 
diff --git a/tools/internal_ci/linux/grpc_interop_tocloud.sh b/tools/internal_ci/linux/grpc_interop_tocloud.sh
index 5f3c603a1311fa288726c481394c6d8a6c514a81..a3067e70e67ae7e17897c1d773adc6ee58e5210d 100755
--- a/tools/internal_ci/linux/grpc_interop_tocloud.sh
+++ b/tools/internal_ci/linux/grpc_interop_tocloud.sh
@@ -35,5 +35,6 @@ export LANG=en_US.UTF-8
 # Enter the gRPC repo root
 cd $(dirname $0)/../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_interop_tests.py -l all -s all --use_docker --http2_interop -t -j 12 $@
diff --git a/tools/internal_ci/linux/grpc_master.sh b/tools/internal_ci/linux/grpc_master.sh
index b7184c3d7db1cdc052d9d02914dfc8fb4e8e320a..d3c89bfa0715f0f5fafcb4bdaadd087a3af6a05e 100755
--- a/tools/internal_ci/linux/grpc_master.sh
+++ b/tools/internal_ci/linux/grpc_master.sh
@@ -33,15 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../..
 
-# TODO(jtattermusch): get rid of the system inspection eventually
-nproc || true
-lsb_release -dc || true
-gcc --version || true
-clang --version || true
-docker --version || true
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
 
-# Need to increase open files limit for c tests
-ulimit -n 32768
-
-tools/internal_ci/helper_scripts/pre_build_linux.sh
 tools/run_tests/run_tests_matrix.py -f basictests linux --inner_jobs 16 -j 1 --internal_ci
diff --git a/tools/internal_ci/linux/grpc_portability.sh b/tools/internal_ci/linux/grpc_portability.sh
index bc7e8ca3579b7dbc86ac11d9ec46a2279ffb9480..64959c793f32e4ac326067d1a05e57e39b189160 100755
--- a/tools/internal_ci/linux/grpc_portability.sh
+++ b/tools/internal_ci/linux/grpc_portability.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests_matrix.py -f portability linux --inner_jobs 16 -j 1 --internal_ci
diff --git a/tools/internal_ci/linux/grpc_portability_build_only.sh b/tools/internal_ci/linux/grpc_portability_build_only.sh
index fda511ea673b64bb3d02ab1a551c2d009ba711b7..099c3f8948ceeefbe2f84509a9f6ee14077b6a5e 100755
--- a/tools/internal_ci/linux/grpc_portability_build_only.sh
+++ b/tools/internal_ci/linux/grpc_portability_build_only.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests_matrix.py -f portability linux --internal_ci --build_only
diff --git a/tools/internal_ci/linux/grpc_sanity.sh b/tools/internal_ci/linux/grpc_sanity.sh
index 2c6712a893aab9abdf44506ec07a0675b29486aa..7166ce7d248985590a901c702c6aff40e037e59f 100755
--- a/tools/internal_ci/linux/grpc_sanity.sh
+++ b/tools/internal_ci/linux/grpc_sanity.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests.py -l sanity -c opt -t -x sponge_log.xml --use_docker --report_suite_name sanity_linux_opt
diff --git a/tools/internal_ci/linux/sanitizer/grpc_c_asan.sh b/tools/internal_ci/linux/sanitizer/grpc_c_asan.sh
index be5ad1c1ae2361478905ff5c4ac4b0e55637ca5c..5a61d9d5d1b5c81596c6682ee8fca96a3e099818 100755
--- a/tools/internal_ci/linux/sanitizer/grpc_c_asan.sh
+++ b/tools/internal_ci/linux/sanitizer/grpc_c_asan.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests_matrix.py -f c asan --inner_jobs 16 -j 1 --internal_ci
diff --git a/tools/internal_ci/linux/sanitizer/grpc_c_msan.sh b/tools/internal_ci/linux/sanitizer/grpc_c_msan.sh
index 299f7739fe36964e626e9a8dd9fde34962d9692c..1c3b90dce223d83cd068817be644f4200de12316 100755
--- a/tools/internal_ci/linux/sanitizer/grpc_c_msan.sh
+++ b/tools/internal_ci/linux/sanitizer/grpc_c_msan.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests_matrix.py -f c msan --inner_jobs 16 -j 1 --internal_ci
diff --git a/tools/internal_ci/linux/sanitizer/grpc_c_tsan.sh b/tools/internal_ci/linux/sanitizer/grpc_c_tsan.sh
index 6429d07a6385dfa777da43cbe254edba1b7b5ffb..495a004c9df04900ab39d3d1d90b2fb0bba17c2a 100755
--- a/tools/internal_ci/linux/sanitizer/grpc_c_tsan.sh
+++ b/tools/internal_ci/linux/sanitizer/grpc_c_tsan.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests_matrix.py -f c tsan --inner_jobs 16 -j 1 --internal_ci
diff --git a/tools/internal_ci/linux/sanitizer/grpc_cpp_asan.sh b/tools/internal_ci/linux/sanitizer/grpc_cpp_asan.sh
index 1303d4a110b91ed12a8cd8de7d5fa1992850a04f..99219e3515998bcea38e5198ecfdca35464e2d25 100755
--- a/tools/internal_ci/linux/sanitizer/grpc_cpp_asan.sh
+++ b/tools/internal_ci/linux/sanitizer/grpc_cpp_asan.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests_matrix.py -f c++ asan --inner_jobs 16 -j 1 --internal_ci
diff --git a/tools/internal_ci/linux/sanitizer/grpc_cpp_tsan.sh b/tools/internal_ci/linux/sanitizer/grpc_cpp_tsan.sh
index 972e33f542d00f4a5d83c91a0c1c31914d1a45f6..be46af902c58cf5b10c3f669c213566676087943 100755
--- a/tools/internal_ci/linux/sanitizer/grpc_cpp_tsan.sh
+++ b/tools/internal_ci/linux/sanitizer/grpc_cpp_tsan.sh
@@ -33,5 +33,6 @@ set -ex
 # change to grpc repo root
 cd $(dirname $0)/../../../..
 
-tools/internal_ci/helper_scripts/pre_build_linux.sh
+source tools/internal_ci/helper_scripts/prepare_build_linux_rc
+
 tools/run_tests/run_tests_matrix.py -f c++ tsan --inner_jobs 16 -j 1 --internal_ci